事件驱动
创新互联公司服务项目包括马村网站建设、马村网站制作、马村网页制作以及马村网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,马村网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到马村省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
那么什么是事件呢?比如说抬手,吃苹果,玩手机,打英雄联盟,说白了就是一个动作
那么驱动是什么呢?比如说抬起手来看看手中的手机有没有消息,玩手机看到一条很有意思的说说,打英雄联盟输了,说白了就是事件产生的后续结果。
那么事件驱动就是一个因果关系,我触发了什么,什么就会执行,如果有个中间人,那么就会告诉中间人,我干了什么,比如说Java中的按钮的点击事件,就是这样的。希望以上对你的理解有所帮助。
什么是事件驱动模型?
在讲解事件驱动模型之前,我们现在看看事件驱动模型的三大要素:
·事件源:能够接收外部事件的源体。
·侦听器:能够接收事件源通知的对象。
·事件处理程序:用于处理事件的对象。
学员应该要理解任何基于事件驱动模型的开发技术都包含以上三大要素,不管是.net还是java技术,甚至是以前我们使用的Visual Basic和Delphi语言都有基于以上三大要素的事件驱动模型开发流程。
现在我们来看一个生活中的示例,假如有一天你走在路上一不小心被天上掉下来的花瓶砸到了,并且晕死了过去。那么整个过程其实就是一个事件处理流程,而且我们可以非常方便的分析出刚才所提到的事件驱动模型中的三大要素。
1.被砸晕的这个人其实就是事件源,因为他是能够接受到外部的事件的源体。
2.侦听器就是这个人的大脑神经,因为它会感知到疼痛。
3.事件处理就是这个人晕死了过去。
由于事件驱动模型在我们日常生活中是无处不在的,因此Java和其他的编程语言都将这一过程运用到了可视化编程中了。
Swing是目前Java中不可缺少的窗口工具组,是用户建立图形化用户界面(GUI)程序的强大工具。Java Swing组件自动产生各种事件来响应用户行为。如当用户点击按钮或选择菜单项目时,Swing组件会产生一个ActionEvent。Swing组件会产生许多事件,如ActionEvents,ChangeEvents,ItemEvents等,来响应用户的鼠标点击行为,列表框中值的改变,计时器的开始计时等行为。在Java Swing编程中,通过注册监听器,我们可以监听事件源产生的事件,从而在事件处理程序中处理我们所需要处理的用户行为。
Java Swing中处理各组件事件的一般步骤是:
1. 新建一个组件(如JButton)。
2. 将该组件添加到相应的面板(如JPanel)。
3. 注册监听器以监听事件源产生的事件(如通过ActionListener来响应用户点击按钮)。
4. 定义处理事件的方法(如在ActionListener中的actionPerformed中定义相应方法)。
以上步骤我们可以用多种方法实现。但人们通常用二种方法。第一种方法是只利用一个监听器以及多个if语句来决定是哪个组件产生的事件;第二种方法是使用多个内部类来响应不同组件产生的各种事件,其具体实现又分两种方式,一种是匿名内部类,一种是一般内部类。