第6章_Java图形用户界面
- 格式:ppt
- 大小:209.00 KB
- 文档页数:46


第6章 Java语言的图形用户界面开发技术作业习题与答案
一、简答题
略
二、填空题
1.版面管理器
2.图形用户界面
3.标签
4. mouseReleased
5. CheckboxGroup
6.适配器类
7.事件类
8.事件机制 事件源
三、选择题
第1至10题:B D C C A B B C D C
四 、编程题
1.
import java.awt.*;
public class ChaSixProg1 extends Frame{
Choice ch;
Checkbox bg,fg;
Button btnOK,btnCancel;
Panel p,p1,p2;
public ChaSixProg1(){
super("颜色选择窗口");
p=new Panel();
p.setLayout(new GridLayout(2,1));
p1=new Panel();
p2=new Panel();
p1.setLayout(new FlowLayout());
p2.setLayout(new FlowLayout());
ch=new Choice();
ch.add("红色");
ch.add("黄色");
ch.add("黑色");
ch.add("紫色");
ch.add("绿色");
bg=new Checkbox("背景"); fg=new Checkbox("前景");
p1.add(bg);
p1.add(fg);
btnOK=new Button("确定");
btnCancel=new Button("取消");
p2.add(btnOK);
p2.add(btnCancel);
实 验 教 案
课题(项目)名称:实验六 Java图形用户界面设计 计划学时: 2
实验类型: 1.演示性□ 2.验证性□ 3.综合性□ 4.设计性□ 5.其它□
授课日期: 年 月 日 第 周 星期 第 节
一、实验目的:
掌握基本的Java GUI设计技术。
二、实验要求:
(1) 给出程序设计的基本思想、原理和算法描述。
(2) 源程序给出注释。
(3) 记录程序的运行结果,并结合程序进行分析。
三、实验设备:
硬件要求:P4以上微机。
软件配置:eclipse、JDK6等
四、实验内容
1、编程实现在屏幕上显示一个窗口,窗口标题为“窗口程序”,窗口的位置为(100,100),窗口大小为450*300像素,当点击窗口上的关闭按钮时,窗口程序可以关闭。
窗口如图所示:
参考程序如下:
import javax.swing.JFrame; public class GuiDemo1 {
public static void main(String[] args) {
JFrame frame = new JFrame("窗口程序");
frame.setLocation(100, 100);
frame.setSize(450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
2、在实验1的基础上,添加或修改代码,使得窗口显示在屏幕中央,并且在标题栏上添加自定义的程序图标。窗口如图所示:
参考代码如下:
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.JFrame; public class GuiDemo1 {
第4章 图形用户界面设计
本章要点
Java图形用户界面设计的基本知识
布局管理器的应用
Java常用图形用界面设计组件的应用
Java常用组件事件处理的应用
4.1 认识AWT包和Swing包
用户界面是计算机用户与软件之间的交互接口。一个功能完善,使用方便的用户界面可以使软件的操作更加简单,使用户与程序之间的交互更加有效。因此图形用户界面(graphics
user interface,GUI)的设计和开发已经成为软件开发中的一项重要的工作。
Java语言提供的开发图形用户界面(GUI)的功能包括AWT(Abstract Window Toolkit)和Swing两部分。这两部分功能由Java的两个包来完成-awt和swing。虽然这两个包都是用于图形用户界面的开发,但是它们不是同时被开发出来了。awt包是最早被开发出来的。但是使用awt包开发出来的图形用户界面并不完美,在使用上非常的不灵活。比如awt包所包含的组件,其外观是固定的,无法改变,这就使得开发出来的界面非常死板。这种设计是站在操作系统的角度开发图形用户界面,主要考虑的是程序与操作系统的兼容性。这样做的最大问题就是灵活性差,而且程序在运行时还会消耗很多系统资源。
由于awt包的不足表现,SUN公司于1998年针对它存在的问题,对其进行了扩展,开发出了Swing,即swing包。但是,SUN公司并没有让swing包完成替代awt包,而是让这两个包共同存在,互取所需。awt包虽然存在缺点,但是仍然有可用之处,比如在图形用户界面中用到的布局管理器、事件处理等依然采用的是awt包的内容。
Java有两个主要类库分别是Java包和Javax包。在Java包中存放的是Java语言的核心包。Javax包是Sun公司提供的一个扩展包,它是对原Java包的一些优化处理。
swing包由于是对awt包的扩展和优化,所以是存放在Javax包下的,而awt包是存放在Java包下的。虽然swing是扩展包,但是,现在的图形用户界面基本都是基于swing包开发的。
JavaSwing介绍
Swing 是⼀个为Java设计的GUI⼯具包。
Swing是JAVA基础类的⼀部分。
Swing包括了图形⽤户界⾯(GUI)器件如:⽂本框,按钮,分隔窗格和表。
Swing提供许多⽐AWT更好的屏幕显⽰元素。它们⽤纯Java写成,所以同Java本⾝⼀样可以跨平台运⾏,这⼀点不像AWT。
它们是JFC的⼀部分。它们⽀持可更换的⾯板和主题(各种操作系统默认的特有主题),然⽽不是真的使⽤原⽣平台提供的
设备,⽽是仅仅在表⾯上模仿它们。这意味着你可以在任意平台上使⽤JAVA⽀持的任意⾯板。轻量级组件的缺点则是执⾏
速度较慢,优点就是可以在所有平台上采⽤统⼀的⾏为。
Hello World 程序
HelloWorldSwing.java ⽂件代码如下:
1 import javax.swing.*;
2 public class HelloWorldSwing {
3 /**{
4 * 创建并显⽰GUI。出于线程安全的考虑,
5 * 这个⽅法在事件调⽤线程中调⽤。
6 */
7 private static void createAndShowGUI() {
8 // 确保⼀个漂亮的外观风格
9 JFrame.setDefaultLookAndFeelDecorated(true);
10
11 // 创建及设置窗⼝
12 JFrame frame = new JFrame("HelloWorldSwing");
13 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
14
15 // 添加 "Hello World" 标签
16 JLabel label = new JLabel("Hello World");
17 frame.getContentPane().add(label);
18
19 // 显⽰窗⼝
20 frame.pack();
21 frame.setVisible(true);