Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程

上传人:E**** 文档编号:89189165 上传时间:2019-05-21 格式:PPT 页数:29 大小:796.50KB
返回 下载 相关 举报
Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程_第1页
第1页 / 共29页
Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程_第2页
第2页 / 共29页
Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程_第3页
第3页 / 共29页
Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程_第4页
第4页 / 共29页
Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程》由会员分享,可在线阅读,更多相关《Java程序设计及应用开发教程 教学课件 ppt 作者 虞益诚 主编 第8章图形用户界面编程(29页珍藏版)》请在金锄头文库上搜索。

1、2019/5/21,1,Java程序设计及应用开发教程,主编: 虞益诚,E-mail:,2019/5/21,第8章 图形用户界面编程,2,第8章 图形用户界面编程,8.1 组件概述 8.2 AWT图形化界面基础 8.3 事件处理机制 8.4 本章小结 图形用户界面是为应用程序提供一个图形化的界面,通过它用户和程序之间可以方便地进行交互,完成应用程序使用中的数据输入与输出等操作任务。本章主要讲述了容器AWT组件(包括:Frame、Panel、Button、Label、文本框与文本域、复选框与单选按钮、下拉列表与列表、Dialog与Canvas画布等),同时介绍了事件处理机制及其诸多事件等。,20

2、19/5/21,第8章 图形用户界面编程,3,8.1 组件概述,设计和实现图形用户界面的设计的主要任务包括如下两个层次: 创建组成界面的各成分和元素,指定它们的属性和位置关系,根据具体需要布局排列,从而构成完整的图形用户界面的外观表象。 定义图形用户界面的事件和各界面元素所对不同事件的响应,从而实现图形用户界面与用户间的交互功能。 8.1.1 组件 Java图形用户界面最基本的组成部分是组件,组件是一个可以以图形化方式显示于屏幕上与用户进行交互的对象。如:按钮(button)等。 8.1.2 容器 容器(Container)实际上是ComPonent的子类,由Container类的子类和间接子

3、类创建的对象均称为容器,可以通过add()等方法向容器添加组件,容器本身也是组件,因此可以把一个容器添加到另一个容器中实现容器的嵌套,它具有组件的所有性质。 Java 中 AWT与Swing组件各含有3类常用的容器,前者为Frame、Panel和Applet,后者是JFrame、JPanel、Japplet,Swing同时还有JScrollPane(滚动窗格)、JSplitPane(拆分窗格)和JLayeredPane(分层窗格)。,2019/5/21,第8章 图形用户界面编程,4,8.1 组件概述,8.1.3 AWT组件 抽象窗口工具包AWT(Abstract Window Toolkit)

4、可用于Java的applet和applications中,支持图形用户界面编程的功能,包括: 用户界面组件、事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕分辨率无关;数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴。 JDK 1.2新增加了一个javax.swing包,该包提供了功能更为强大的用来设计GUI界面的类。由java.awt包中的类创建的组件习惯上称为重组件。 8.1.4 Swing组件 Swing是使用AWT作为基础构建起来的的,Javax.swing包为我们提供了更加丰富的、功能强大的Swing组件,其中大部分

5、组件是轻组件,没有同位体。它的大多数组件都是AWT组件名前面加一个“J”,Swing的用法与AWT基本相同,它也使用AWT的事件处理机制,只是组件的风格不同与名字变了,所包含的包也不同(Swing的组件主要包含在javax.swing包中),同时还增加了一些原来没有的特性。例如,一个按钮可以有与之相关联的一幅图像和一个字符串,这幅图像还可以根据按钮状态的变化而更换。,2019/5/21,第8章 图形用户界面编程,5,8.1 组件概述,Swing组件无需同位体,故称之为轻组件。 Javax.swing包中JComponent(轻组件)类是java.awt包中Container类的一个直接子类、C

6、omponenet类的一个间接子类。Javax.swing包中的JFame类和JDialog类分别是java.awt包中Frame类和Dialog类的直接子类、Window类的间接子类。 在Java中必须理解容器和组件两个基本概念: Java把由Component类的子类或间接子类创建的对象称为一个组件。 Java把由Container的子类或间接子类创建的对象称为一个容器。 可以向容器添加组件。Container类提供了一个public方法add(),一个容器可以调用这个方法将组件添加到该容器中。 调用removeAl()方法可以移掉容器中的全部组件,调用remove(Componentc)

7、方法可以移掉容器中参数指定的组件。 每当容器添加新的组件或移掉组件时,应该让容器调用validate()方法,以保证容器中的组件能正确显示出来。 8.1.5 Swing与AWT的区别: Swing 组件全部是由纯Java编写的,功能强大。 AWT是由JDK 1 .0和JDK 1.1平台提供的; Swing所有组件都以J开头: Jbutton、Jpanel等; Swing 使用的包是:Javax.Swing;AWT使用的包为:Java.awt,图8-1 java.awt包中常用类及其类间继承关系,2019/5/21,第8章 图形用户界面编程,7,8.2 AWT图形化界面基础,8.2.1 Fram

8、e框架 Frame组件在Java的顶层窗口中可以独立使用,它融含标题、边框,尚可加入菜单重置大小等。当Frame被关闭,将产生WindowEvent事件,Frame无法直接监听键盘输入事件。Frame类包括构造方法与一般常用类方法,如表8-1所示。 此外还可使用setBackground(Color c)设置组件的背景色。SetBounds(int x, int y, int width, int height)可设置组件在容器中的坐标(x ,y),组件的宽度为width,高度为height。这些方法可设置Frame对象的属性。,2019/5/21,第8章 图形用户界面编程,8,8.2 AWT

9、图形化界面基础,【例8-2】创建一个带窗口图标的Frame类框架。 import java.awt.*; import javax.swing.ImageIcon; class Windowyu static Frame f=new Frame (“这是个背景红色的框架程序“); static ImageIcon icon=new ImageIcon (“BOOK1.JPG“); / 创建icon对象public static void main (String args) f.setBounds (0, 0, 200, 100); f.setBackground(Color.red); /框

10、架背景颜色 f.setIconImage (icon.getImage(); / 将icon对象设置为窗口图标 f.show(); / 显示窗口 / 程序运行结果如图8-4所示。,2019/5/21,第8章 图形用户界面编程,9,8.2.2 Panel面板 Panel面板类为 Container类的子类,也是一种容器,可容纳其他组件(使用add()方法可将其他容器添加到Panel容器),但不是顶层窗口,因而不能独立存在。Panel类方法如表8-2所示。 8.2.3 Button按钮 按钮(Button)是java程序图形界面设计中最常用的一个组件,是可提供用户快速启动某一动作的类。 【例8-4

11、】创建按钮。 按钮的创建方法举例如下:Button Nbutton = new Button(“按钮标签”);,8.2 AWT图形化界面基础,2019/5/21,第8章 图形用户界面编程,10,8.2.4 Label标签 标签(Label)被称为标签组件,是一种用来显示说明性的静态文本的组件。标签是用户只能查看而不能简单地修改其内容的文本显示区域, 标签创建方法为:Label prompt = new Label(“请输入标签说明信息:”); 【例8-5】在窗口给定位置创建一个标签。 8.2.5 文本框与文本域 文本框(TextField)又称单行文本输入域,多用于单行显示,当按下回车键时会发

12、生事件(ActionEvent),可以通过ActionListener中的actionPerformed()方法对事件进行相应处理,可以使用setEditable(boolean)方法设置为只读属性。 而文本域TextArea是多行文本组件,用于显示程序中的多行文本信息。,8.2 AWT图形化界面基础,2019/5/21,第8章 图形用户界面编程,11,创建文本框:TextField tf=new TextField(“Hello!“,30); 创建文本域:TextArea textArea1 = new TextArea(“编辑文本”,10,45); 【例8-6】创建文本框与文本域信息。,8

13、.2 AWT图形化界面基础,2019/5/21,第8章 图形用户界面编程,12,8.2.5 文本框与文本域:例8-6,import java.awt.*; public class Login public static void main(String arg) Frame f = new Frame(“User Login“); f.setBounds (0, 0, 400, 300); /定位 f.setBackground(Color.lightGray); /布局 Label l1 = new Label(“用户:“); /创建标签 TextField te1 = new TextF

14、ield(“user1“,20); /创建文本行 Label l2 = new Label(“口令:“); TextField te2 = new TextField(20); /创建20列的文本行 Button b1 = new Button(“确认“) ; Button b2 = new Button(“取消“); /创建按钮 TextArea ta = new TextArea(“编辑工资管理程序的文本信息“,5,20); /创建文本域 f.setLayout(null); /关闭布局设置 l1.setBounds (50, 50, 50, 20); te1.setBounds (100

15、, 50, 180, 20); l2.setBounds (50, 80, 50, 20); te2.setBounds (100, 80, 180, 20); b1.setBounds (70, 110, 50, 20); b2.setBounds (200, 110, 50, 20); ta.setBounds (50, 140, 230, 80); f.add(l1); /在窗口框架中添加文本框、文本域等一系列对象 f.add(te1); f.add(l2); f.add(te2); f.add(b1); f.add(b2); f.add(ta); f.setVisible(true);

16、 ,2019/5/21,第8章 图形用户界面编程,13,8.2 AWT,8.2.6 复选框与单选按钮 复选框又称为检测盒,用Checkbox类的对象表示, Checkbox由一个方形的选择区和一个标签组成,它有选中和未选中两种状态,可调用getState( ),若复选按钮被选中,则返回true,否则返回false。 创建复选框:Checkbox chbox = new Checkbox(“个人爱好”); 单选按钮和复选框很类似,所不同的是:单独使用复选框类实现多项选择,而放入一个复选框组(CheckboxGroup)中时,构成一组单选按钮,实现单项选择。单选按钮和复选框一样,也触发ItemEvent事件。 【例8-7】创建复选框与单选按钮。,2019/5/21,第8章 图形用户界面编程,14,复选框与单选按钮例8-7:,import java.awt.*; pu

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

当前位置:首页 > 高等教育 > 大学课件

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