|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
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 值形式报告所有已注册侦听器的 bound indexed 属性更新。 |
void |
fireIndexedPropertyChange(String propertyName,
int index,
int oldValue,
int newValue)
以 int 值形式报告所有已注册侦听器的 bound indexed 属性更新。 |
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 值形式报告所有已注册侦听器的 bound 属性更新。 |
void |
firePropertyChange(String propertyName,
int oldValue,
int newValue)
以 int 值形式报告所有已注册侦听器的 bound 属性更新。 |
void |
firePropertyChange(String propertyName,
Object oldValue,
Object newValue)
报告所有已注册侦听器的 bound 属性更新。 |
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()
如果已经使用指定属性添加一些侦听器,则返回的数组将是 PropertyChangeListeners 和 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" } } }
PropertyChangeListeners
,如果没有添加侦听器,则返回一个空数组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
- 将被侦听的属性的名称
PropertyChangeListeners
。如果没有添加这样的侦听器,或者如果 propertyName
为 null,则返回一个空数组。public void firePropertyChange(String propertyName, Object oldValue, Object newValue)
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 的,则不会激发事件。
propertyName
- 被更改属性的编程名称。index
- 被更改属性元素的索引。oldValue
- 属性的旧值。newValue
- 属性的新值。public void fireIndexedPropertyChange(String propertyName, int index, int oldValue, int newValue)
int
值形式报告所有已注册侦听器的 bound indexed 属性更新。
如果旧值和新值相等并且都是非 null 的,则不会激发事件。
这只是一个用来包装获取 Object 值的更常见 fireIndexedPropertyChange 方法的便捷包装器。
propertyName
- 被更改属性的编程名称。index
- 被更改属性元素的索引。oldValue
- 属性的旧值。newValue
- 属性的新值。public void fireIndexedPropertyChange(String propertyName, int index, boolean oldValue, boolean newValue)
boolean
值形式报告所有已注册侦听器的 bound indexed 属性更新。
如果旧值和新值相等并且都是非 null 的,则不会激发事件。
这只是一个用来包装获取 Object 值的更常见 fireIndexedPropertyChange 方法的便捷包装器。
propertyName
- 被更改属性的编程名称。index
- 被更改属性元素的索引。oldValue
- 属性的旧值。newValue
- 属性的新值。public boolean hasListeners(String propertyName)
propertyName
为 null,则只检查所有属性上注册的侦听器。
propertyName
- 属性名。
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。