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