Java程序设计教师教学用资源、Java程序设计第23讲图形界面设计.pptVIP

  • 5
  • 0
  • 约1.52千字
  • 约 15页
  • 2021-07-24 发布于北京
  • 举报

Java程序设计教师教学用资源、Java程序设计第23讲图形界面设计.ppt

第23讲 图形界面设计 GUI全称是Graphical User Interface,即图形用户界面。如:窗口、 菜单、按钮、工具栏等屏幕元素。在Java中有两个包为图形用户用户界面提供了丰富的功能,它们是awt和Swing。Swing是awt的扩充版本,包含了awt中所有的部件。 一、初识AWT 例1:实现一个窗口,窗口内有一个按钮OK。 一、初识AWT GUI组件的分类 基本组件:如按钮、文本框等图形元素,这些组件上不能容纳其他的组件。(按钮上不能放文本框) 容器:可以容纳其他组件的组件,如窗口Frame、对话框Dialog、面板JPanel等 一、初识AWT AWT包中一部分的类层次关系如图 二、AWT线程 在上面的程序中,主调用线程main方法在f.setVisible(true)语句后,main线程就结束了,但程序没有结束,窗口不仅正常显示在桌面上,这个线程就是awt的线程。可以简单的认为,产生Frame对象时,创建的新线程(只要有一个前台线程,整个进程就不会结束)。 三、AWT事件处理 1、事件处理机制 事件:用户对组件的一个操作,如关闭窗口。 事件源:产生事件的组件对象,如要关闭窗口,事件源是窗口。 事件处理器:处理事件的方法(代码)。 事件监视器:对象对事件源进行监视,以便对发生的事件进行处理。 三、AWT事件处理 1、事件处理机制 Java事件处理的过程(见P289图8.2) 三、AWT事件处理 2、AWT的事件类XxxEvent ,都在java.awt.event类中,分为低级事件和语义事件(高级事件) 。 三、AWT事件处理 低级事件:对应了具体的动作,具体的组件低级事件包括: ? ComponentEvent(组件事件) ? FocusEvent(焦点事件) ? ContainerEvent(窗口事件) ? PaintEvent(绘画事件) ? WindowEvent(窗口事件) ? KeyEvent(键盘事件) ? MouseEvent(鼠标事件) 三、AWT事件处理 高级事件不代表具体的动作,而是一种语义,如某个按钮被按下,并不区分是鼠标按下的还是键盘按下的,只要是用户的一个动作导致了某个组件本身最基本的动作发生了,包括: 三、AWT事件处理 高级事件 ? ItemEvent(项目事件):如选中某个项目。 ? AdjustmentEvent(调节事件):如移动了滚动条。 ? ActionEvent(动作事件):如按钮被按下。 ? TextEvent(文字事件):如改变文字对象。 区分低级事件和语义事件的最简单方法:见P290。 三、AWT事件处理 3、用事件监听器处理事件 (1)实现事件监听器接口:XXXListener 所有的事件监听接口都是从java.util.EventListener接口派生而来的 class MyWindowListener implements WindowListener 三、AWT事件处理 3、用事件监听器处理事件 (2)在组件上注册事件监听 具体注册方法: f.addWindowListener(new MyWindowListener()) 三、AWT事件处理 例:在上面的例子中加入窗口关闭的代码。 Java程序设计 Component Button Scrollbar Canvas List Checkbox TextFiled Label TextArea Container Window Panel Frame Dialog * *

文档评论(0)

1亿VIP精品文档

相关文档