读书人

求解fireContentsChanged的工作机制、

发布时间: 2012-02-26 20:19:45 作者: rapoo

求解fireContentsChanged的工作机制、过程、原理
很多地方都能看到类似 fireContentsChanged 的处理,但一直不明白它的作用,jdk上只说了一个或多个元素发生更改之后调用此方法。但没说什么要调用,处理作用及意义是什么,最好有示例说明。

Java code
public class DefaultComboBoxModel extends AbstractListModel implements MutableComboBoxModel, Serializable {    public void setSelectedItem(Object anObject) {        if ((selectedObject != null && !selectedObject.equals( anObject )) ||        selectedObject == null && anObject != null) {        selectedObject = anObject;        fireContentsChanged(this, -1, -1);        }    }}


[解决办法]
Java事件机制,你可以用Google搜相关资料,推荐一篇博文《Java事件传送技术》,具体地址忘了。fireContentsChanged是将事件通知给ListDataListener,方法中的for循环就是传递内容改变事件给所有的监听者,这里是JComboBox自身(可以查看JComboBox中有contentsChanged方法),通知其后台内容改变。

读书人网 >J2SE开发

热点推荐