|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.beans.PropertyChangeSupport
public class PropertyChangeSupport
這是一個實用工具類別,支持綁定 (bound) 屬性的 bean 可以使用該類別。可以使用此類別的實例作為 bean 的成員欄位,並將各種工作委託給它。 此類別是可序列化的。在對它進行序列化時,它將保存(並恢復)本身可序列化的所有偵聽器。在序列化期間,將跳過所有不可序列化的偵聽器。
建構子摘要 | |
---|---|
PropertyChangeSupport(Object sourceBean)
建構一個 PropertyChangeSupport 物件。 |
方法摘要 | |
---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
向偵聽器列表添加一個 PropertyChangeListener。 |
void |
addPropertyChangeListener(String propertyName,
PropertyChangeListener listener)
為指定的屬性向偵聽器列表中添加一個 PropertyChangeListener。 |
void |
fireIndexedPropertyChange(String propertyName,
int index,
boolean oldValue,
boolean newValue)
以 boolean 值形式報告所有已註冊偵聽器的綁定索引屬性更新。 |
void |
fireIndexedPropertyChange(String propertyName,
int index,
int oldValue,
int newValue)
以 int 值形式報告所有已註冊偵聽器的綁定索引屬性更新。 |
void |
fireIndexedPropertyChange(String propertyName,
int index,
Object oldValue,
Object newValue)
報告所有已註冊偵聽器的綁定 (bound) 索引 (indexed) 屬性更新。 |
void |
firePropertyChange(PropertyChangeEvent evt)
對所有已註冊偵聽器觸發一個現有 PropertyChangeEvent。 |
void |
firePropertyChange(String propertyName,
boolean oldValue,
boolean newValue)
以 boolean 值形式報告所有已註冊偵聽器的綁定屬性更新。 |
void |
firePropertyChange(String propertyName,
int oldValue,
int newValue)
以 int 值形式報告所有已註冊偵聽器的綁定屬性更新。 |
void |
firePropertyChange(String propertyName,
Object oldValue,
Object newValue)
報告所有已註冊偵聽器的綁定屬性更新。 |
PropertyChangeListener[] |
getPropertyChangeListeners()
返回使用 addPropertyChangeListener() 添加到此 PropertyChangeSupport 物件中的所有偵聽器組成的陣列。 |
PropertyChangeListener[] |
getPropertyChangeListeners(String propertyName)
返回與指定屬性相關聯的所有偵聽器的列表。 |
boolean |
hasListeners(String propertyName)
檢查是否存在特定屬性的任何偵聽器,包括那些已在所有屬性上註冊的偵聽器。 |
void |
removePropertyChangeListener(PropertyChangeListener listener)
從偵聽器列表移除一個 PropertyChangeListener。 |
void |
removePropertyChangeListener(String propertyName,
PropertyChangeListener listener)
為特定屬性移除一個 PropertyChangeListener。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public PropertyChangeSupport(Object sourceBean)
PropertyChangeSupport
物件。
sourceBean
- 作為所有事件的源提供的 bean。方法詳細資訊 |
---|
public void addPropertyChangeListener(PropertyChangeListener listener)
listener
為 null,則不會拋出異常並且不執行操作。
listener
- 要添加的 PropertyChangeListenerpublic void removePropertyChangeListener(PropertyChangeListener listener)
listener
多次添加到同一事件源,則在被移除之後,它至少將被通知一次。如果 listener
為 null,或者從未被添加,則不會拋出異常並且不執行操作。
listener
- 要移除的 PropertyChangeListenerpublic PropertyChangeListener[] getPropertyChangeListeners()
如果已經使用指定屬性添加一些偵聽器,則返回的陣列將是 PropertyChangeListener 和 PropertyChangeListenerProxy
的混合物。如果調用方法對區別偵聽器感興趣,那麼它必須測試每個元素,以查看該元素是否是一個 PropertyChangeListenerProxy
,然後執行強制轉換並檢查該參數。
PropertyChangeListener[] listeners = bean.getPropertyChangeListeners(); for (int i = 0; i < listeners.length; i++) { if (listeners[i] instanceof PropertyChangeListenerProxy) { PropertyChangeListenerProxy proxy = (PropertyChangeListenerProxy)listeners[i]; if (proxy.getPropertyName().equals("foo")) { // proxy is a PropertyChangeListener which was associated // with the property named "foo" } } }
PropertyChangeListener
,如果沒有添加偵聽器,則返回一個空陣列PropertyChangeListenerProxy
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
propertyName
或 listener
為 null,則不會拋出異常並且不執行操作。
propertyName
- 要偵聽的屬性的名稱。listener
- 要添加的 PropertyChangeListenerpublic void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
listener
多次添加到指定屬性的同一事件源,則在被移除之後,它至少將被通知一次。如果 propertyName
為 null,則不會拋出異常並且不執行操作。如果 listener
為 null,或者從不為指定屬性添加 pcl,則不拋出異常並不執行任何操作。
propertyName
- 已被偵聽的屬性的名稱。listener
- 要移除的 PropertyChangeListenerpublic PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
propertyName
- 將被偵聽的屬性的名稱
PropertyChangeListener
。如果沒有添加這樣的偵聽器,或者 propertyName
為 null,則返回一個空陣列。public void firePropertyChange(String propertyName, Object oldValue, Object newValue)
這只是一個用來包裹獲取 PropertyChangeEvent
值的更一般 firePropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public void firePropertyChange(String propertyName, int oldValue, int newValue)
這只是一個用來包裹獲取 Object 值的更常見 firePropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
這只是一個用來包裹獲取 Object 值的更常見 firePropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public void firePropertyChange(PropertyChangeEvent evt)
evt
- PropertyChangeEvent 物件。public void fireIndexedPropertyChange(String propertyName, int index, Object oldValue, Object newValue)
如果舊值和新值相等並且都是非 null 的,則不會觸發事件。
這只是一個用來包裹獲取 PropertyChangeEvent
值的更一般 firePropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。index
- 被更改屬性元素的索引。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public void fireIndexedPropertyChange(String propertyName, int index, int oldValue, int newValue)
int
值形式報告所有已註冊偵聽器的綁定索引屬性更新。
如果舊值和新值相等,則不會觸發事件。
這只是一個用來包裹獲取 Object 值的更常見 fireIndexedPropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。index
- 被更改屬性元素的索引。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public void fireIndexedPropertyChange(String propertyName, int index, boolean oldValue, boolean newValue)
boolean
值形式報告所有已註冊偵聽器的綁定索引屬性更新。
如果舊值和新值相等,則不會觸發事件。
這只是一個用來包裹獲取 Object 值的更常見 fireIndexedPropertyChange 方法的便捷外覆器。
propertyName
- 被更改屬性的程式名稱。index
- 被更改屬性元素的索引。oldValue
- 屬性的舊值。newValue
- 屬性的新值。public boolean hasListeners(String propertyName)
propertyName
為 null,則只檢查所有屬性上註冊的偵聽器。
propertyName
- 屬性名。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。