当前位置:文档之家› Java教材课件.ppt

Java教材课件.ppt


}
public void paint(Graphics g){
super.paint(g);
g.drawString("你好!",50,50);
}
public MyFrame (String str){
super(str); //调用父类的构造方法
}
}
12
import java.awt.*; import java.awt.event.*;
8.1.1 java.awt包
• java.awt包中提供了GUI设计所使用的类和接 口,可从图8.1中看到主要类之间的关系。
• java.awt包提供了基本的java程序的GUI设计 工具。主要包括下述三个概念:
– 组件—
Component
– 容器—
Container
– 布局管理器— LayoutManager
getComponentAt(int x, int y)
getForeground() getSize() repaint() setVisible(boolean b) setName(String name) 等
getFont()
getName() paint(Graphics g) update() setSize(Dimension d)
3
8. 1 AWT和 Swing简介
抽象窗口工具包 AWT ( Abstract Window Toolkit ) 是 API为 Java 程序提供的建立图形用户界面GUI (Graphical User Interface)工具集, AWT 可用于Java 的 applet 和 applications 中。
它支持图形用户界面编程的功能包括:
1. 用户界面组件; 2. 事件处理模型;
5. 布局管理器,可以进行 灵活的窗口布局而与特
3. 图形和图像工具,
定窗口的尺寸和屏幕分
4. 包括形状、颜色和字体类;
辨率无关;
6. 数据传送类,可以通过
本地平台的剪贴板来进
行剪切和粘贴。
4
8. 1 AWT和 Swing简介
第8章 图形用户界面应用
Graphical User Interface GUI
教学目的要求
• 了解Java语言中图形用户界面的构造与设计。 • 掌握其实现的基本原理和方法,达到能够设计具有图
形用户界面程序的目的。 • 掌握用AWT来设计图形用户界面的方法,尤其是组
件、容器、布局管理器等概念。 • 学习AWT事件处理模型,掌握事件源、事件、事件
处理者等概念,让程序能够响应用户的操作。最后 了解AWT各个组件的用法及所采用的事件处理接口。 • 通过技能训练,熟练掌握Java语言中图形用户界面程 序的编写。
2
本讲内容
• 8.1 AWT 和 Swing 简介 • 8.2 布局管理 Layout Manager • 8.3 事件处理模型 • 8.4 常用组件的应用
• java.awt包中包含了一个完整的类集以支持GUI 程序的设计(重量级构件)
ng.Object
图8.1
事件类 字体类
Graphics
颜色类
图象类
Component 布局管理类
菜单类
Button
Checkbox
List …
Container
Window
Frame
Dialog
Panel Apple5 t
ScrollPane,常用的有Panel, Frame, Applet。
11
8.1.3 常用容器-Frame
import javax.swing.*; import java.awt.*;
1.Frame 例:
public class MyFrame extends JFrame{
public static void main(String args[ ]){
10
8.1.3 常用容器
• 容器 java.awt.Container 是 Component 的 子类,一个容器可以容纳多个组件,并使它们 成为一个整体。容器可以简化图形化界面的设 计,以整体结构来布置界面。所有的容器都可 以通过 add()方法向容器中添加组件。
• 有三种类型的容器:Window、Panel、
MyFrame fr = new MyFrame("你好!");//构造方法
fr.setSize(200,200); //设置Frame的大小,缺省为(0,0)
fr.setVisible(true);
fr.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
6
8.1.2 组件和容器
• Java的图形用户界面的最基本组成部分是组件 (Component)
• 组件是一个可以以图形化的方式显示在屏幕上并能与用户 进行交互的对象,例如一个按钮,一个标签等。组件不能 独立地显示出来,必须将组件放在一定的容器中才可以显 示出来。
7
• 类ponent 是许多组件类的父类,Component 类中封装了组件通用的方法和属性,如图形的组件对象、大小、 显示位置、前景色和背景色、边界、可见性等,因此许多组件 类也就继承了Component 类的成员方法和成员变量,相应的 成员方法包括:
• 为了使我们生成的图形用户界面具有良好的平台无关性, Java语言中,提供了布局管理器这个工具来管理组件在容 器中的布局,而不使用直接设置组件位置和大小的方式。
9
8.1.2 组件和容器
• 在程序中安排组件的位置和大小时,应该注意以下两点: – 1.容器中的布局管理器负责各个组件的大小和位置,因 此用户无法在这种情况下设置组件的这些属性。如果试 图使用Java 语言提供的setLocation(),setSize(), setBounds() 等方法,则都会被布局管理器覆盖。 – 2.如果用户确实需要亲自设置组件大小或位置,则应取 消该容器的布局管理器,方法为: setLayout(null);
8
• 容器(Container)也是一个类,实际上是 Component 的子 类,因此容器本身也是一个组件,具有组件的所有性质, 但是它的主要功能是容纳其它组件和容器。
• 布局管理器(LayoutManager):每个容器都有一个布局 管理器,当容器需要对某个组件进行定位或判断其大小尺 寸时,就会调用其对应的布局管理器。
相关主题