e650. 激活事件
An object wishing to fire item events must implement ItemSelectable
. This example shows typical code that an object must implement to fire item events. When an item event is to be fired, fireItemEvent()
should be called.
public class MyComponent implements ItemSelectable {
protected EventListenerList listenerList = new EventListenerList(); public Object[] getSelectedObjects() {
return selectedObjects;
} public void addItemListener(ItemListener l) {
listenerList.add(ItemListener.class, l);
} public void removeItemListener(ItemListener l) {
listenerList.remove(ItemListener.class, l);
} // If the item is selected, sel should be true.
void fireItemEvent(Object item, boolean sel) {
ItemEvent evt = new ItemEvent(this, ItemEvent.ITEM_STATE_CHANGED,
item, sel ? ItemEvent.SELECTED : ItemEvent.DESELECTED); // Get list of listeners
Object[] listeners = listenerList.getListenerList(); // Send event to all listeners
for (int i=0; i<listeners.length-2; i+=2) {
if (listeners[i] == ItemListener.class) {
((ItemListener)listeners[i+1]).itemStateChanged(evt);
}
}
}
}
Related Examples |
e650. 激活事件的更多相关文章
- libevent(八)激活事件
激活事件添加流程 事件发生后,需要把对应的event加入到激活事件队列中. 整个流程如下: 对于定时器事件,在timeout_process过程中,会将事件从最小堆中删除. 激活事件处理流程 在eve ...
- [WCF编程]10.操作:事件
一.事件概述 基础的WCF回调机制并不能阐明客户端与服务之间交互的本质.双向回调的规范使用可以通过事件来完成.客户端发生的相关事项都可以通过事件通知客户端或者多个客户端.事件可能源于直接的客户端调用, ...
- Page事件执行顺序
Page 执行中将按照如下顺序激活事件: Page.PreInit Page.Init Page.InitComplite Page.PreLoad Page.Load Page.LoadComple ...
- Redis事件管理(三)
Redis的事件管理和定时器的管理都是自己来实现的,Redis的事件管理分为两部分,一部分是封装了系统的异步事件API,还有一部分是在这基础上封装了一个通用的事件管理器,根据具体的系统来决定具体使用哪 ...
- 将事件绑定在html标签中和js动态绑定的区别
一:绑定在标签中: 能够一眼看出那些元素绑定了什么事件. 只能将元素和事件逐一实现绑定. 二js动态绑定: 可以一次动态的给多个元素绑定事件,批量绑定事件. html标签绑定的缺点: ①:可能有时间差 ...
- libevent (三) 事件注册与循环监听
事件注册与循环监听 在libevent中为了监听某种事件的发生,设置事件触发后的回调函数,也就是说对该事件注册到当前的IO模型中. 事件注册 事件初始化 使用`event_new`函数来对事件进行初始 ...
- JQuery基础教程:事件(下)
事件传播 为了说明不可单击的页面元素处理单击事件的能力,例如样式转换器中包含按钮的div元素或者兄弟元素h3,我们来实现一个鼠标指针进入元素和离开元素时的效果,首先需要添加一种翻转状态,表明 ...
- 关于asp.net中页面事件加载的先后顺序
一.ASP.NET 母版页和内容页中的事件 母版页和内容页都可以包含控件的事件处理程序.对于控件而言,事件是在本地处理的,即内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件.控件事件 ...
- trigger()的event事件对象之坑
问题引入,先贴一段有问题的代码,如果你对 trigger() 这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐 ...
随机推荐
- 【转载】BasicDataSource配置说明
commons DBCP 配置参数简要说明 在配置时,主要难以理解的主要有:removeAbandoned .logAbandoned.removeAbandonedTimeout.maxWait这四 ...
- [hihoCoder] #1089 : 最短路径·二:Floyd算法
时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 万圣节的中午,小Hi和小Ho在吃过中饭之后,来到了一个新的鬼屋! 鬼屋中一共有N个地点,分别编号为1..N,这N个地点之间 ...
- CentOS防火墙开启、关闭与开放指定端口
系统为centos 5.5,部署好Tomcat之后却发现输入114.80.*.*:8080(即ip:8080)却无法显示Tomcat默认的首页.由于以前部署在Win Server的VPS上,Linux ...
- Xcode真机调试报错:The application could not be verified.
今天真机调试的时候遇到这个错误: The application could not be verified. 这还是第一次遇到,应该是手机上的app的证书跟如今的证书不一致导致. 解决方法有两个 x ...
- iOS之Sqlite3封装
一.代码下载 代码下载地址 二.实例效果展示 imageMogr2/auto-orient/strip%7CimageView2/2/w/1240" alt="效果图二.png&q ...
- 每日英语:Burning Question / Does Reading In Dim Light Hurt Your Eyes?
Mom always told us we'd go blind if we read in the dark. Does science back her up? Jim Sheedy, a doc ...
- 每日英语:He Diets, She Diets: More Weight-Loss Plans Target Men
Weight-loss companies are becoming savvier about getting men to go on a diet. savvier:更加精明 Men and w ...
- vim显示行号、语法高亮、自动缩进、添加下划线的设置
ubuntu默认是没有安装vim的,所以设置以前请先安装vim:sudo apt-get install vim. 然后 打开vim的配置文件:sudo vim /etc/vim/vimrc 或者 s ...
- postgres入门介绍
mysql被oricle公司收购以后,PG就成了比较流行的开源数据库的首选,而且heroku上面不支持mysql,但是却大力支持PG,所以说,不得不学学PG,并非迫不得已的样子,至少以后PG会比较流行 ...
- phalcon的url大小写的问题
一开始我以为url的大小写是不区分的,实际上调试时是可以发现获取到的url是大小写是和请求时一致, 所谓的没区分,只是服务器或者相应的代码做的处理. 在phalcon里如果路由是api/test,则会 ...