JavaTM 2 Platform
Standard Ed. 6

javax.swing
類別 UIDefaults

java.lang.Object
  繼承者 java.util.Dictionary<K,V>
      繼承者 java.util.Hashtable<Object,Object>
          繼承者 javax.swing.UIDefaults
所有已實作的介面:
Serializable, Cloneable, Map<Object,Object>

public class UIDefaults
extends Hashtable<Object,Object>

Swing 元件的預設值表。應用程序可以通過 UIManager 設置/獲取預設值。

警告:此類別的序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲,或適用於在運行相同 Swing 版本的應用程序之間進行 RMI(Remote Method Invocation,遠端方法調用)。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder

另請參見:
UIManager

巢狀類別摘要
static interface UIDefaults.ActiveValue
          此類別使使用者能夠在預設表中存儲項,該預設表在每次使用某個 getXXX(key) 方法進行尋找時創建。
static class UIDefaults.LazyInputMap
          LazyInputMap 將在其 createValue 方法中創建一個 InputMap
static interface UIDefaults.LazyValue
          此類別使使用者能夠在預設表中存儲項,該預設表只有在第一次使用某個 getXXX(key) 方法進行尋找時才創建。
static class UIDefaults.ProxyLazyValue
          此類別提供一個可用於延遲載入要創建實例類別的 LazyValue 的實作。
 
建構子摘要
UIDefaults()
          創建一個空預設值表。
UIDefaults(int initialCapacity, float loadFactor)
          創建一個帶有指定初始容量和載入因子的空預設值表。
UIDefaults(Object[] keyValueList)
          創建一個使用指定鍵/值對初始化的預設值表。
 
方法摘要
 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 值,則返回該 boolean 值,否則返回 false。
 boolean getBoolean(Object key, Locale l)
          如果給定 Localekey 值是 boolean 值,則返回該 boolean 值,否則返回 false。
 Border getBorder(Object key)
          如果 key 值為一個 Border,則返回該 Border,否則返回 null
 Border getBorder(Object key, Locale l)
          如果給定 Localekey 值為一個 Border,則返回該 Border,否則返回 null
 Color getColor(Object key)
          如果 key 值為一個 Color,則返回它,否則返回 null
 Color getColor(Object key, Locale l)
          如果給定 Localekey 值為一個 Color,則返回它,否則返回 null
 Locale getDefaultLocale()
          返回該預設語言環境。
 Dimension getDimension(Object key)
          如果 key 值為一個 Dimension,則返回該 Dimension,否則返回 null
 Dimension getDimension(Object key, Locale l)
          如果給定 Localekey 值為一個 Dimension,則返回該 Dimension,否則返回 null
 Font getFont(Object key)
          如果 key 值為一個 Font,則返回該 Font,否則返回 null
 Font getFont(Object key, Locale l)
          如果給定 Localekey 值為一個 Font,則返回它,否則返回 null
 Icon getIcon(Object key)
          如果 key 值為一個 Icon,則返回該 Icon,否則返回 null
 Icon getIcon(Object key, Locale l)
          如果給定 Localekey 值為一個 Icon,則返回該 Icon,否則返回 null
 Insets getInsets(Object key)
          如果 key 值為一個 Insets,則返回它,否則返回 null
 Insets getInsets(Object key, Locale l)
          如果給定 Localekey 值為一個 Insets,則返回該 Insets,否則返回 null
 int getInt(Object key)
          如果 key 值為一個 Integer,則返回該整數值,否則返回 0。
 int getInt(Object key, Locale l)
          如果給定 Localekey 值為一個 Integer,則返回其整數值,否則返回 0。
 PropertyChangeListener[] getPropertyChangeListeners()
          返回使用 addPropertyChangeListener() 添加到此 UIDefaults 的所有 PropertyChangeListener 組成的陣列。
 String getString(Object key)
          如果 key 值為一個 String,則返回該 String,否則返回 null
 String getString(Object key, Locale l)
          如果給定 Localekey 值為一個 String,則返回該 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) 的值必須為一個類別的 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)
          設置預設語言環境。
 
從類別 java.util.Hashtable 繼承的方法
clear, clone, contains, containsKey, containsValue, elements, entrySet, equals, hashCode, isEmpty, keys, keySet, putAll, rehash, remove, size, toString, values
 
從類別 java.lang.Object 繼承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait
 

建構子詳細資訊

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", new Integer(5)
        }
        UIDefaults myDefaults = new UIDefaults(uiDefaults);
 

參數:
keyValueList - 套件含鍵/值對的物件陣列
方法詳細資訊

get

public Object get(Object key)
返回鍵的值。如果該值為 UIDefaults.LazyValue,則使用 LazyValue.createValue() 計算其實際值,替換表項並返回實際值。如果該值為 UIDefaults.ActiveValue,則不替換表項,而是使用每個 get() 調用的 ActiveValue.createValue() 來計算該值。如果未在表中找到該鍵,則在此物件維護的資源包中搜尋它。使用由 getDefaultLocale 返回的語言環境首先搜尋最近添加的資源套件。LazyValuesActiveValues 在資源包中不受支持。

指定者:
介面 Map<Object,Object> 中的 get
覆寫:
類別 Hashtable<Object,Object> 中的 get
參數:
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,則不替換表項,而是使用每個 get() 調用的 ActiveValue.createValue() 來計算該值。如果未在表中找到該鍵,則在由此物件維護的資源包中搜尋它。使用給定的語言環境首先搜尋最近添加的資源套件。LazyValuesActiveValues 在資源包中不受支持。

參數:
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,則從表中移除該鍵。

指定者:
介面 Map<Object,Object> 中的 put
覆寫:
類別 Hashtable<Object,Object> 中的 put
參數:
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,則返回該 Font,否則返回 null

參數:
key - 所需的鍵
返回:
如果 key 的值為一個 Font,則返回該 Font 物件;否則返回 null

getFont

public Font getFont(Object key,
                    Locale l)
如果給定 Localekey 值為一個 Font,則返回它,否則返回 null

參數:
key - 所需的鍵
l - 所需語言環境
返回:
如果 keyLocale 的值為一個 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)
如果給定 Localekey 值為一個 Color,則返回它,否則返回 null

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Color,則返回該 Color 物件;否則返回 null
從以下版本開始:
1.4

getIcon

public Icon getIcon(Object key)
如果 key 值為一個 Icon,則返回該 Icon,否則返回 null

參數:
key - 所需的鍵
返回:
如果 key 的值為一個 Icon,則返回該 Icon 物件;否則返回 null

getIcon

public Icon getIcon(Object key,
                    Locale l)
如果給定 Localekey 值為一個 Icon,則返回該 Icon,否則返回 null

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Icon,則返回該 Icon 物件;否則返回 null
從以下版本開始:
1.4

getBorder

public Border getBorder(Object key)
如果 key 值為一個 Border,則返回該 Border,否則返回 null

參數:
key - 所需的鍵
返回:
如果 key 的值為一個 Border,則返回該 Border 物件;否則返回 null

getBorder

public Border getBorder(Object key,
                        Locale l)
如果給定 Localekey 值為一個 Border,則返回該 Border,否則返回 null

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Border,則返回該 Border 物件;否則返回 null
從以下版本開始:
1.4

getString

public String getString(Object key)
如果 key 值為一個 String,則返回該 String,否則返回 null

參數:
key - 所需的鍵
返回:
如果 key 的值為一個 String,則返回該 String 物件;否則返回 null

getString

public String getString(Object key,
                        Locale l)
如果給定 Localekey 值為一個 String,則返回該 String,否則返回 null

參數:
key - 所需的鍵
l - 所需的 Locale
返回:
如果給定 Localekey 的值為一個 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)
如果給定 Localekey 值為一個 Integer,則返回其整數值,否則返回 0。

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Integer,則返回其值,否則返回 0
從以下版本開始:
1.4

getBoolean

public boolean getBoolean(Object key)
如果 key 是 boolean 值,則返回該 boolean 值,否則返回 false。

參數:
key - 指定所需 boolean 值的鍵的 Object
返回:
如果 key 值是 boolean 值,則返回該 boolean 值,否則返回 false。
從以下版本開始:
1.4

getBoolean

public boolean getBoolean(Object key,
                          Locale l)
如果給定 Localekey 值是 boolean 值,則返回該 boolean 值,否則返回 false。

參數:
key - 一個指定所需 boolean 值的鍵的 Object
l - 所需的語言環境
返回:
如果 keyLocale 的值是 boolean 值,則返回該 boolean 值,否則返回 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)
如果給定 Localekey 值為一個 Insets,則返回該 Insets,否則返回 null

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Insets,則返回該 Insets 物件;否則返回 null
從以下版本開始:
1.4

getDimension

public Dimension getDimension(Object key)
如果 key 值為一個 Dimension,則返回該 Dimension,否則返回 null

參數:
key - 所需的鍵
返回:
如果 key 的值為一個 Dimension,則返回該 Dimension 物件;否則返回 null

getDimension

public Dimension getDimension(Object key,
                              Locale l)
如果給定 Localekey 值為一個 Dimension,則返回該 Dimension,否則返回 null

參數:
key - 所需的鍵
l - 所需的語言環境
返回:
如果 keyLocale 的值為一個 Dimension,則返回該 Dimension 物件;否則返回 null
從以下版本開始:
1.4

getUIClass

public Class<? extends ComponentUI> getUIClass(String uiClassID,
                                               ClassLoader uiClassLoader)
get(uidClassID) 的值必須為一個類別的 String 名稱,該類別實作相應的 ComponentUI 類別。如果以前未載入該類別,若提供非 null 類別載入器,則此方法會使用 uiClassLoader.loadClass() 尋找該類別,否則使用 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 的字元串
返回:
getUIClass(uiClassID, null) 返回的類別物件

getUIError

protected void getUIError(String msg)
如果由於某種原因導致 getUI() 失敗,則它會在返回 null 之前調用此方法。子類別在這裡也可以選擇執行差不多的操作。

參數:
msg - 要列印的訊息字元串
另請參見:
getUI(javax.swing.JComponent)

getUI

public ComponentUI getUI(JComponent target)
創建一個指定元件的 ComponentUI 實作。換句話說,創建 target 的特定於外觀的委託物件。此操作分以下兩步進行:

參數:
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 不相等,且 PropertyChangeEventx 偵聽器列表不為空,則對每個偵聽器觸發一個 PropertyChange

參數:
propertyName - 已更改的屬性的程式名稱
oldValue - 屬性的舊值
newValue - 屬性的新值
另請參見:
PropertyChangeSupport

addResourceBundle

public void addResourceBundle(String bundleName)
將一個資源包添加到從中搜尋本地化值的資源套件的列表中。按添加時的反向順序搜尋資源套件。換句話說,就是搜尋最近剛添加的套件。

參數:
bundleName - 要添加的資源套件的基本名稱
從以下版本開始:
1.4
另請參見:
ResourceBundle, removeResourceBundle(java.lang.String)

removeResourceBundle

public void removeResourceBundle(String bundleName)
從在其中搜尋本地化預設的資源包列表中移除一個資源套件。

參數:
bundleName - 要移除的資源套件的基本名稱
從以下版本開始:
1.4
另請參見:
ResourceBundle, addResourceBundle(java.lang.String)

setDefaultLocale

public void setDefaultLocale(Locale l)
設置預設語言環境。通過不帶 locale 參數的 get 方法,使用預設語言環境檢索本地化值。從版本 1.4 開始,Swing UI 物件應該使用其元件的語言環境而不是使用預設語言環境檢索本地化值。預設的語言環境可以與 1.4 以前的行為相容。

參數:
l - 新的預設語言環境
從以下版本開始:
1.4
另請參見:
getDefaultLocale(), get(Object), get(Object,Locale)

getDefaultLocale

public Locale getDefaultLocale()
返回該預設語言環境。通過不帶 locale 參數的 get 方法,使用預設語言環境檢索本地化值。從版本 1.4 開始,Swing UI 物件應該使用其元件的語言環境而不是使用預設語言環境檢索本地化值。預設的語言環境可以與 1.4 以前的行為相容。

返回:
該預設語言環境
從以下版本開始:
1.4
另請參見:
setDefaultLocale(java.util.Locale), get(Object), get(Object,Locale)

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only