网站大量收购独家精品文档,联系QQ:2885784924

Java程序设计中文6slide.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java程序设计中文6slide.ppt

Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved. 0-13-222158-6 Chapter 16 事件驱动程序设计 Objectives To start with event-driven programming with a simple example (§14.1). To explain the concept of event-driven programming (§14.2). To understand events, event sources, and event classes (§14.2). To declare listener classes and write the code to handle events (§14.3). To register listener objects in the source object (§11.3). To understand how an event is handled (§14.3). To write programs to deal with ActionEvent (§14.3). To write programs to deal with MouseEvent (§14.4). To write programs to deal with KeyEvent (§14.5). To use the Timer class to control animations (§14.6 Optional). 过程式 vs. 事件驱动编程 过程式程序是按过程的顺序执行的。 在事件驱动程序中,当发生一个事件时执行相应的代码。 Taste of Event-Driven Programming 事件和事件源 事件可定义为程序发生了某些事情的信号。外部用户行为,例如移动鼠标、点击按钮和敲击键盘等,或内部程序行为,例如定时器等都可以引发事件。程序可以选择响应或忽略事件。 在其上触发或发生事件的组件称为源对象或源组件。 Event Classes 事件信息 事件对象包含与事件相关的一切属性。可以使用EventObject类中的实例方法 getSource() 获得事件的源对象. EventObject 类的子类处理特定类型的事件。 用户行为、源对象和事件类型 注 所有的事件类除了ListSelectionEvent和ChangeEvent(在javax.swing.event中)都包括在java.awt.event包中。AWT事件本来是为AWT组件设计的,但是许多Swing组件都会触发它们。 如果一个组件可以触发某个事件,那么这个组件的任意子类都可以触发同类型的事件。 委托处理模型 源组件的内部函数 事件、监听接口和接口方法 java.awt.event.ActionEvent Example: First Version for ControlCircle (no listeners) 首先编写程序,显示一个圆在中央以及两个按钮在底部的用户接口 Example: Second Version for ControlCircle (with listener for Enlarge) 编写监听器类,来通过按钮控制圆的半径。 内部类监听器 内部类是定义在另一个类的范围内的类,监听器类是专门设计用来为GUI组件创建监听器对象的,而监听器类是不能被其他应用程序所共享,因此适合在框架内定义为内部类。 内部类 Revising SimpleEventDemo Using Inner Classes 匿名内部类 可以使用匿名内部类缩短内部类监听器。匿名内部类是没有名字的内部类。它一步完成声明内部类和创建一个该类的实例。 匿名内部类 匿名内部类必须是扩展父类或实现接口的,但它不能有明确的extends或者implements语句。 匿名内部类必须实现父类或接口中所有的抽象方法。 匿名内部类总是使用父类的无参构造方法来创建实例。 Revising SimpleEventDemo Using Anonymous Inner Classes Example: Handling Simple Action Events Objective: 在窗口中显示 OK 和 Cancel按钮. 当某个按钮被按下,在控制台上会有相应按钮被按下的提示信息。 Example: 处理窗口事件 监听器接口适配器 MouseEvent Handling Mouse Events Java 提供两个处理鼠标事件的监听接口,

文档评论(0)

rewfdgd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档