- java.lang.Object
-
- java.util.Dictionary<K,V>
-
- java.util.Hashtable<Object,Object>
-
- javax.swing.UIDefaults
-
- All Implemented Interfaces:
-
Serializable
,Cloneable
,Map<Object,Object>
public class UIDefaults extends Hashtable<Object,Object>
Swing组件的默认表。 应用程序可以通过UIManager
设置/获取默认值。警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,支持所有JavaBeans的长期存储已被添加到
java.beans
包中。 请参阅XMLEncoder
。- 从以下版本开始:
- 1.2
- 另请参见:
-
UIManager
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 static interface
UIDefaults.ActiveValue
该类可以使用getXXX(key)
方法之一在每次查询时构建的默认表中存储一个条目。static class
UIDefaults.LazyInputMap
LazyInputMap
将在其createValue
方法中创建一个InputMap
。static interface
UIDefaults.LazyValue
此类允许在缺省表中存储一个条目,直到第一次使用其中一个getXXX(key)
方法查找为止。static class
UIDefaults.ProxyLazyValue
该类提供了一个LazyValue
的实现,可以用于延迟加载要创建的实例的Class。
-
构造方法摘要
构造方法 Constructor 描述 UIDefaults()
创建一个空默认表。UIDefaults(int initialCapacity, float loadFactor)
创建具有指定的初始容量和负载因子的空默认表。UIDefaults(Object[] keyValueList)
创建使用指定的键/值对初始化的默认值表。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
addPropertyChangeListener(PropertyChangeListener listener)
添加一个PropertyChangeListener
到监听器列表。void
addResourceBundle(String bundleName)
将资源包添加到搜索本地化值的资源束列表中。protected void
firePropertyChange(String propertyName, Object oldValue, Object newValue)
支持报告绑定属性更改。Object
get(Object key)
返回值的值。Object
get(Object key, Locale l)
返回与给定语言环境相关联的键的值。boolean
getBoolean(Object key)
如果值为key
为布尔值,则返回布尔值,否则返回false。boolean
getBoolean(Object key, Locale l)
如果值key
对于给定Locale
是布尔值,则返回该boolean值,否则返回false。Border
getBorder(Object key)
如果key
的值是Border
返回,否则返回null
。Border
getBorder(Object key, Locale l)
如果值key
对于给定Locale
是Border
返回它,否则返回null
。Color
getColor(Object key)
如果值key
是Color
返回它,否则返回null
。Color
getColor(Object key, Locale l)
如果key
为Locale
是Color
,则返回,否则返回null
。Locale
getDefaultLocale()
返回默认语言环境。Dimension
getDimension(Object key)
如果key
的值是Dimension
返回,否则返回null
。Dimension
getDimension(Object key, Locale l)
如果key
为Locale
值为Dimension
返回,否则返回null
。Font
getFont(Object key)
如果key
的值是Font
返回,否则返回null
。Font
getFont(Object key, Locale l)
如果值key
对于给定Locale
是Font
返回它,否则返回null
。Icon
getIcon(Object key)
如果key
的值是Icon
返回,否则返回null
。Icon
getIcon(Object key, Locale l)
如果key
的值为key
,Locale
Icon
返回,否则返回null
。Insets
getInsets(Object key)
如果key
的值是Insets
返回,否则返回null
。Insets
getInsets(Object key, Locale l)
如果key
的值为Locale
是Insets
返回,否则返回null
。int
getInt(Object key)
如果key
值为Integer
返回其整数值,否则返回0。int
getInt(Object key, Locale l)
如果值key
对于给定Locale
是Integer
返回其整数值,否则返回0。PropertyChangeListener[]
getPropertyChangeListeners()
返回使用addPropertyChangeListener()添加到此UIDefaults的所有PropertyChangeListener
的数组。String
getString(Object key)
如果key
的值是String
返回,否则返回null
。String
getString(Object key, Locale l)
如果key
的值为key
,Locale
String
返回,否则返回null
。ComponentUI
getUI(JComponent target)
为指定的组件创建一个ComponentUI
实现。Class<? extends ComponentUI>
getUIClass(String uiClassID)
返回呈现此组件的L&F类。Class<? extends ComponentUI>
getUIClass(String uiClassID, ClassLoader uiClassLoader)
get(uidClassID)
的值必须是实现相应的ComponentUI
类的类的String
名称。protected void
getUIError(String msg)
如果getUI()
由于任何原因失败,则在返回null
之前调用此方法。Object
put(Object key, Object value)
将所有区域设置的值为key
设置为value
。void
putDefaults(Object[] keyValueList)
将所有键/值对放在数据库中,无条件生成一个PropertyChangeEvent
。void
removePropertyChangeListener(PropertyChangeListener listener)
从侦听器列表中移除PropertyChangeListener
。void
removeResourceBundle(String bundleName)
从查找本地化默认值的资源束列表中删除资源包。void
setDefaultLocale(Locale l)
设置默认语言环境。-
Methods inherited from class java.util.Hashtable
clear, clone, compute, computeIfAbsent, computeIfPresent, contains, containsKey, containsValue, elements, entrySet, equals, forEach, getOrDefault, hashCode, isEmpty, keys, keySet, merge, putAll, putIfAbsent, rehash, remove, remove, replace, replace, replaceAll, size, toString, values
-
-
-
-
构造方法详细信息
-
UIDefaults
public UIDefaults()
创建一个空默认表。
-
UIDefaults
public UIDefaults(int initialCapacity, float loadFactor)
创建具有指定的初始容量和负载因子的空默认表。- 参数
-
initialCapacity
- 默认表的初始容量 -
loadFactor
- 默认表的负载因子 - 从以下版本开始:
- 1.6
- 另请参见:
-
Hashtable
-
UIDefaults
public UIDefaults(Object[] keyValueList)
创建使用指定的键/值对初始化的默认值表。 例如:Object[] uiDefaults = { "Font", new Font("Dialog", Font.BOLD, 12), "Color", Color.red, "five", Integer.valueOf(5) } UIDefaults myDefaults = new UIDefaults(uiDefaults);
- 参数
-
keyValueList
- 包含键/值对的对象数组
-
-
方法详细信息
-
get
public Object get(Object key)
返回值的值。 如果值为UIDefaults.LazyValue
那么实际值将用LazyValue.createValue()
计算,表条目将被替换,并返回实数值。 如果该值是UIDefaults.ActiveValue
表项不会被替换-数值计算与ActiveValue.createValue()
每个get()
电话。 如果表中找不到键,则在该对象维护的资源束列表中进行搜索。 最近搜索的资源束最近使用由getDefaultLocale
返回的语言环境首先添加。 资源束不支持LazyValues
和ActiveValues
。- Specified by:
-
get
在接口Map<Object,Object>
- 重写:
-
get
在Hashtable<Object,Object>
- 参数
-
key
- 所需的密钥 - 结果
-
值为
key
- 从以下版本开始:
- 1.4
- 另请参见:
-
UIDefaults.LazyValue
,UIDefaults.ActiveValue
,Hashtable.get(java.lang.Object)
,getDefaultLocale()
,addResourceBundle(java.lang.String)
-
get
public Object get(Object key, Locale l)
返回与给定语言环境相关联的键的值。 如果值为UIDefaults.LazyValue
那么实际值是用LazyValue.createValue()
计算的,表条目被替换,并返回实数值。 如果该值是UIDefaults.ActiveValue
表项不会被替换-数值计算与ActiveValue.createValue()
每个get()
电话。 如果表中找不到键,则在该对象维护的资源束列表中进行搜索。 首先使用给定的区域设置搜索最近添加的资源束。 资源包中不支持LazyValues
和ActiveValues
。- 参数
-
key
- 所需的密钥 -
l
- 所需的locale
- 结果
-
价值为
key
- 从以下版本开始:
- 1.4
- 另请参见:
-
UIDefaults.LazyValue
,UIDefaults.ActiveValue
,Hashtable.get(java.lang.Object)
,addResourceBundle(java.lang.String)
-
put
public Object put(Object key, Object value)
将所有区域设置的值为key
设置为value
。 如果key
是一个字符串,新值不等于旧值,则启动一个PropertyChangeEvent
。 如果值为null
,则从表中删除该键。- Specified by:
-
put
在接口Map<Object,Object>
- 重写:
-
put
在Hashtable<Object,Object>
- 参数
-
key
- 唯一的Object
谁将使用谁的值来检索与之相关的数据值 -
value
- 新的Object
存储为该密钥下的数据 - 结果
-
以前的
Object
值,或null
- 另请参见:
-
putDefaults(java.lang.Object[])
,Hashtable.put(K, V)
-
putDefaults
public void putDefaults(Object[] keyValueList)
将所有键/值对放在数据库中,并无条件地生成一个PropertyChangeEvent
。 事件oldValue和newValue将为null
,其propertyName
将为“UIDefaults”。 为所有区域设置添加键/值对。- 参数
-
keyValueList
- 键/值对数组 - 另请参见:
-
put(java.lang.Object, java.lang.Object)
,Hashtable.put(K, V)
-
getFont
public Font getFont(Object key)
如果key
的值是Font
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
值为Font
,则返回Font
对象; 否则返回null
-
getFont
public Font getFont(Object key, Locale l)
如果值key
对于给定Locale
是Font
返回它,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Font
,则返回Font
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getColor
public Color getColor(Object key)
如果key
的值是Color
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
的值是Color
,则返回Color
对象; 否则返回null
-
getColor
public Color getColor(Object key, Locale l)
如果key
的值为key
,Locale
Color
返回,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Color
,则返回Color
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getIcon
public Icon getIcon(Object key)
如果key
的值是Icon
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
的值是Icon
,则返回Icon
对象; 否则返回null
-
getIcon
public Icon getIcon(Object key, Locale l)
如果值key
对于给定Locale
是Icon
返回它,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Icon
,则返回Icon
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getBorder
public Border getBorder(Object key)
如果key
的值是Border
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
的值是Border
,则返回Border
对象; 否则返回null
-
getBorder
public Border getBorder(Object key, Locale l)
如果值key
对于给定Locale
是Border
返回它,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Border
,则返回Border
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getString
public String getString(Object key)
如果key
的值是String
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
的值是String
,则返回String
对象; 否则返回null
-
getString
public String getString(Object key, Locale l)
如果值key
对于给定Locale
是String
返回它,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的Locale
- 结果
-
如果
key
的值为Locale
是String
,则返回String
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getInt
public int getInt(Object key)
如果key
值为Integer
返回其整数值,否则返回0。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
值为Integer
,则返回其值,否则返回0
-
getInt
public int getInt(Object key, Locale l)
如果值key
对于给定Locale
是Integer
返回其整数值,否则返回0。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Integer
,则返回其值,否则返回0 - 从以下版本开始:
- 1.4
-
getBoolean
public boolean getBoolean(Object key)
如果值为key
是布尔值,则返回布尔值,否则返回false。- 参数
-
key
- 一个指定所需布尔值的键的Object
- 结果
-
如果值为
key
是布尔值,则返回布尔值,否则返回false。 - 从以下版本开始:
- 1.4
-
getBoolean
public boolean getBoolean(Object key, Locale l)
如果给定的Locale
的值为key
为boolean,则返回布尔值,否则返回false。- 参数
-
key
- 一个指定所需布尔值的键的Object
-
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为布尔值,则返回布尔值,否则返回false。 - 从以下版本开始:
- 1.4
-
getInsets
public Insets getInsets(Object key)
如果key
的值是Insets
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
的值是Insets
,则返回Insets
对象; 否则返回null
-
getInsets
public Insets getInsets(Object key, Locale l)
如果key
的Locale
值为Insets
,则返回,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Insets
,则返回Insets
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getDimension
public Dimension getDimension(Object key)
如果key
的值是Dimension
返回,否则返回null
。- 参数
-
key
- 所需的密钥 - 结果
-
如果
key
值为Dimension
,则返回Dimension
对象; 否则返回null
-
getDimension
public Dimension getDimension(Object key, Locale l)
如果key
的给定Locale
Dimension
,则返回null
,否则返回null
。- 参数
-
key
- 所需的密钥 -
l
- 所需的语言环境 - 结果
-
如果
key
和Locale
值为Dimension
,则返回Dimension
对象; 否则返回null
- 从以下版本开始:
- 1.4
-
getUIClass
public Class<? extends ComponentUI> getUIClass(String uiClassID, ClassLoader uiClassLoader)
值get(uidClassID)
必须String
实现相应的类的名称ComponentUI
类。 如果以前没有加载该类,uiClassLoader.loadClass()
如果提供非null
类加载器,则此方法将查找具有null
类,否则为classForName()
。如果存在
uiClassID
的映射,或者指定的类不能找到,请返回null
。该方法由
getUI
,通常不需要直接调用它。- 参数
-
uiClassID
- 包含类ID的字符串 -
uiClassLoader
- 将加载类的对象 - 结果
-
价值
Class.forName(get(uidClassID))
- 另请参见:
-
getUI(javax.swing.JComponent)
-
getUIClass
public Class<? extends ComponentUI> getUIClass(String uiClassID)
返回呈现此组件的L&F类。- 参数
-
uiClassID
- 包含类ID的字符串 - 结果
-
Class对象返回
getUIClass(uiClassID, null)
-
getUIError
protected void getUIError(String msg)
如果由于任何原因getUI()
失败,则在返回null
之前调用此方法。 子类可能会在这里做出更多或更少的改变。- 参数
-
msg
- 要打印的消息字符串 - 另请参见:
-
getUI(javax.swing.JComponent)
-
getUI
public ComponentUI getUI(JComponent target)
为指定的组件创建一个ComponentUI
实现。 换句话说,为target
创建外观和特定委托对象。 这通过两个步骤完成:- 查找
ComponentUI
实现类的名称,返回值为target.getUIClassID()
。 - 使用实现类static
createUI()
方法来构造外观和委托。
- 参数
-
target
- 需要UI的JComponent
- 结果
-
ComponentUI
对象
- 查找
-
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)
添加一个PropertyChangeListener
到监听器列表。 所有属性都注册了监听器。默认值更改时,
PropertyChangeEvent
将被触发。- 参数
-
listener
- 要添加的PropertyChangeListener
- 另请参见:
-
PropertyChangeSupport
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener)
从侦听器列表中删除PropertyChangeListener
。 这将删除所有属性注册的PropertyChangeListener
。- 参数
-
listener
- 要删除的PropertyChangeListener
- 另请参见:
-
PropertyChangeSupport
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()
返回使用addPropertyChangeListener()添加到此UIDefaults的所有PropertyChangeListener
的数组。- 结果
-
所有的
PropertyChangeListener
添加或一个空数组,如果没有听众被添加 - 从以下版本开始:
- 1.4
-
firePropertyChange
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
支持报告绑定属性更改。 如果oldValue和newValue不相等,并且PropertyChangeEvent
x侦听器列表不为空,则向每个侦听器发送一个PropertyChange
事件。- 参数
-
propertyName
- 已更改的属性的编程名称 -
oldValue
- 该物业的旧值 -
newValue
- 该物业的新值 - 另请参见:
-
PropertyChangeSupport
-
addResourceBundle
public void addResourceBundle(String bundleName)
- 参数
-
bundleName
- 要添加的资源束的基本名称 - 从以下版本开始:
- 1.4
- 另请参见:
-
ResourceBundle
,removeResourceBundle(java.lang.String)
,ResourceBundle.getBundle(String, Locale, ClassLoader)
-
removeResourceBundle
public void removeResourceBundle(String bundleName)
从查找本地化默认值的资源束列表中删除资源包。- 参数
-
bundleName
- 要删除的资源束的基本名称 - 从以下版本开始:
- 1.4
- 另请参见:
-
ResourceBundle
,addResourceBundle(java.lang.String)
-
setDefaultLocale
public void setDefaultLocale(Locale l)
设置默认语言环境。 默认语言环境用于通过get
方法检索本地化值,get
方法不采用语言环境参数。 从版本1.4开始,Swing UI对象应使用其组件的语言环境而不是默认语言环境来检索本地化值。 存在缺省区域设置,以提供与1.4的行为的兼容性。- 参数
-
l
- 新的默认语言环境 - 从以下版本开始:
- 1.4
- 另请参见:
-
getDefaultLocale()
,get(Object)
,get(Object,Locale)
-
getDefaultLocale
public Locale getDefaultLocale()
返回默认语言环境。 默认区域设置用于通过get
方法检索本地化值,get
方法不采用区域设置参数。 从版本1.4开始,Swing UI对象应使用其组件的语言环境而不是默认语言环境来检索本地化值。 存在缺省区域设置,以提供与1.4的行为的兼容性。- 结果
- 默认语言环境
- 从以下版本开始:
- 1.4
- 另请参见:
-
setDefaultLocale(java.util.Locale)
,get(Object)
,get(Object,Locale)
-
-