The Java Tutorial-lesson 11.ppt

上传人:小** 文档编号:89319732 上传时间:2019-05-23 格式:PPT 页数:25 大小:245KB
返回 下载 相关 举报
The Java Tutorial-lesson 11.ppt_第1页
第1页 / 共25页
The Java Tutorial-lesson 11.ppt_第2页
第2页 / 共25页
The Java Tutorial-lesson 11.ppt_第3页
第3页 / 共25页
The Java Tutorial-lesson 11.ppt_第4页
第4页 / 共25页
The Java Tutorial-lesson 11.ppt_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《The Java Tutorial-lesson 11.ppt》由会员分享,可在线阅读,更多相关《The Java Tutorial-lesson 11.ppt(25页珍藏版)》请在金锄头文库上搜索。

1、The Java Tutorial,A Short Course on the Basics Fourth Edition,Swing,GUI和Swing 一个简单的例子(NetBeans),JFrame,Java中的顶级容器之一。所谓顶级容器,指的是能包含其它控件,但不被其它任何控件所包含。如JFrame,JDialog等。 SimpleFrameTest.java,JFrame常用方法,setLocation:指定frame的起始位置 setBounds:指定frame的起始位置和长宽 setIconImage:设置frame的图标 setTitle setResizable,Java的事

2、件处理,Java语言将每一个键盘或鼠标的操作定义为一个“事件”,在编程中只需定义每个特定事件发生时程序应该做出何种响应即可。这就是图形用户界面中的“事件”和“事件响应” 除了鼠标和键盘的操作,又如系统的状态改变、标准图形界面元素等都可以引发事件,系统对这些事件分别定义处理代码,就可以保证应用程序系统有条不紊地工作。,事件处理的模式,事件源(如按钮、文本框等对象),XEvent事件对象,监听器(任意对象) implements XListener,注册监听者addXListener(),用户操作,触发事件,调用事件处理方法,Java的事件处理是如何工作的,一个监听器对象是一个类的实例,该类实现了

3、某个特定的监听接口。 一个事件源是一个对象,该对象可以注册一个监听器对象,并且将事件对象发送给监听器对象。 当事件发生,事件源将事件对象发送给所有注册的监听器。 监听器对象使用事件对象里的信息来决定响应。,例子,ButtonTest.java 事件处理的内部类形式。 匿名类。,事件对象,事件监听接口,常见事件处理(1),按钮点击、菜单选择、输入栏回车: 产生ActionEvent事件对象,用addActionListener()方法注册监听对象;监听类必须实现ActionListener接口,在actionPerformed()方法中完成事件的处理。 列表框选择、单选/复选框选择: 产生Ite

4、mEvent事件对象;用addItemListener()方法注册监听对象;监听类必须实现ItemListener()接口,在itemStateChanged()方法中完成事件的处理,常见事件处理(2),鼠标点击: 产生MouseEvent事件对象;用addMouseListener()方法注册监听对象;监听类需要实现MouseListener接口,在mouseClick()方法中完成事件的处理。 鼠标移动: 产生MouseEvent事件对象;用addMouseMotionListener()方法注册监听对象;监听类需要实现MouseMotionListener接口,在mouseMoved()

5、方法中完成事件的处理。,适配器类,由于有的监听接口处理多种事件,定义的抽象方法较多。因而当我们直接实现这些接口时,需要完成所有的方法,这是比较麻烦又没有必要的。为了方便使用,java.awt.event提供了一组适配器类(Adapter)。 适配器类实现了相应的监听接口,但所有的方法都是空方法,没有具体语句。使用时,我们派生出自己的适配器类,然后只需重写所需要的事件处理方法,不再要求完成所有的方法。,例子,public interface WindowListener void windowOpened(WindowEvent e); void windowClosing(WindowEven

6、t e); void windowClosed(WindowEvent e); void windowIconified(WindowEvent e); void windowDeiconified(WindowEvent e); void windowActivated(WindowEvent e); void windowDeactivated(WindowEvent e); ,class Terminator extends WindowAdapter public void windowClosing(WindowEvent e) if (user agrees System.exit

7、(0); WindowListener listener = new Terminator(); frame.addWindowListener(listener);,适配器类,动作事件(ActionEvent),用户的一个功能性操作通常会产生动作事件,如点击按钮、双击列表项、选择菜单、文本框中输入回车等。 Java用ActionEvent类对象表示动作事件,通过该对象的方法可得到事件相关信息,如: getActionCommand()可得到事件源命令名; getModifiers()可得到功能键状态; getWhen()可得到事件产生的绝对时间,文本事件TextEvent,当用户修改文本框和

8、文本区域中的内容时,会产生文本事件。Java中用TextEvent对象表示文本事件。要处理文本事件,需用addTextListener()方法注册事件监听对象,监听对象所在的类应该实现TextListener接口,并在textValueChanged()方法中完成事件处理代码。 当用户在文本框中输入回车时,会产生动作事件ActionEvent,选择事件ItemEvent,当单选按钮、复选按钮、下拉框、列表框的内容被选中时,将产生选择事件,Java中用ItemEvent对象表示该事件。要处理选择事件,需用事件源的addItemListener()方法注册事件监听对象,监听对象所在的类应该实现It

9、emListener接口,并在itemStateChanged()方法中完成事件处理代码。 ItemEvent对象的getItem()方法可以得到用户的操作的选择项;getItemSelectable()可以得到引发选择事件的事件源对象,调整事件,当用户改变滚动条的滑块位置时,将产生调整事件,Java中用AdjustmentEvent对象表示调整事件。要处理选择事件,需用addAdjustmentListener()方法注册事件监听对象,监听对象所在的类应该实现AdjustmentListener接口,并在adjustmentValueChanged()方法中完成事件处理代码。 整事件的get

10、AdjustmnetType()方法可以得到事件发生的细节,getValue()方法可以得到滑块的位置。,鼠标、键盘事件,当用户移动鼠标、按下鼠标按键或敲击键盘时,将产生鼠标或键盘事件,Java中分别以MouseEvent和KeyEvent对象表示。两种事件类都继承自InputEvent。 InputEvent提供了getModifiers()方法,可获得事件发生时的细节,比如鼠标按键时的键位,敲击键盘时是否同时按下了Alt或Ctrl键等。所有的awt组件都能成为鼠标或键盘事件的事件源。,常用控件的常用方法,JTextField JTextField(int cols) JTextField(

11、String text, int cols) int get/setColumns() set/getText() JPasswordField JPasswordField(String text, int columns) void setEchoChar(char echo) char getPassword(),JTextArea,JTextArea() JTextArea(int rows, int cols) JTextArea(String text, int rows, int cols) void setColumns(int cols) void setRows(int rows) void append(String newText) void setLineWrap(boolean wrap) void setWrapStyleWord(boolean word) void setTabSize(int c),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号