图形用户界面GUI

抽象窗口工具包AWT:GUI的基本类库位于java.awt包

AWT可用于Java的applet和applications中。
它支持图形用户界面编程的功能包括:
用户界面组件;
事件处理模型;
图形和图像工具,包括形状、颜色和字体类;
布局管理器
java.awt包提供了基本的java程序的GUI设计工具。主要包括下述三个概念:
组件--Component
容器--Container
布局管理器—LayoutManager

理解:容器类(Container)和组件类(Component)

组件:一个可以以图形化的方式显示在屏幕上并能与用户进行交互的对象,例如一个按钮,一个标签等。

组件不能独立地显示出来,必须将组件放在一定的容器中才可以显示出来。

Button、Scrollbar、Canvas、List、Checkbox、TextField、Label类是java.awt包中的Component类的子类。

Java把Component类的子类或间接子类所创建的对象称为一个组件。

容器:是Component的子类,因此容器本身也是一个组件,具有组件的所有性质,但是它的主要功能是容纳其它组件和

器。

Container类,定义了容器所需要用到的属性及方法。
所谓容器就是上面可以放许多其它的组件的东西。容器本身也是一个组件,因此一个容器可以使用add()方法添加另一个容器,实现容器的嵌套。
常用的方法有:
     add(Component  c) 添加组件

    remove(Component  c)删除组件
    setLayout(LayoutManager m)等。
常用的容器有三种:Frame、Panel、Applet

 顶层窗口是指没有被包含在其他窗口中的窗口,也被称为框架(Frame)。Frame包括标题、边框、菜单、大小

 Panel是一种最简单的容器类,提供空间给程序将其它的组件附在其上。也可以将其它的Panel放在其上

 Panel的好处就是可将相关的组件整合组织起来,让用户接口更为简洁清楚。

 Applet是一种可在浏览器中执行的小型Java程序。而大部分执行applet所需的图形支持环境已内建或以嵌入的方式放在浏览器中

 常用的控件有:Checkbox、CheckboxGroup或RadioButton、List、Label、文本编辑区(Edit或TextField、TextArea)、Button

一、开发GUI程序的步骤

构建一个顶层容器(框架):可以独立存在window,Dialog,Frame,applet

设定容器的布局管理器 setLayout()

构建若干个组件,组件可以是其他容器 new

用容器的add方法将这些组件加入到容器中  add()

设置组件属性  setBounds()等 将组件事件与代码关联

 

window Frame,dialog的区别

window:没有边框,没有标题栏,没有菜单栏,也不能缩放大小

Frame:则有边,且可设标题,上面也可放菜单,且可调整大小。Frame最合适用于一个application需要有菜单的窗口。

Dialog:Dialog有边,可设标题,也可调整大小,很像Frame。但与Frame不同的是它不能放菜单。

 

二、创建菜单步骤:

1.创建菜单栏new MenuBar;

MenuBar() 创建新的菜单栏。

2.创建菜单

Menu() 构造具有空标签的新菜单。

Menu(String label)构造具有指定标签的新菜单。

Menu(String label, boolean tearOff)构造具有指定标签的新菜单,指示该菜单是否可以分离。

3.创建菜单项

MenuItem() 构造具有空标签且没有键盘快捷方式的新菜单项。

MenuItem(String label)构造具有指定的标签且没有键盘快捷方式的新菜单项。

MenuItem(String label, MenuShortcut s)创建具有关联的键盘快捷方式的菜单项。

4.把菜单项添加到菜单中

add(....);

5.菜单添加到菜单栏中

add(...);

6.设置窗口的菜单栏

setMenuBar(MenuBar mb)

二、常用的方法

1.addSeparator();将一个分隔线或连字符添加到菜单的当前位置。

三、布局管理

布局管理FlowLayout

1.FlowLayout布局管理器

2.Color:颜色类使用

四、组件

1.TextField:输入一行文本

常用方法

1).getEchoChar(char c) 获取用于回显字符。

2).setEchoChar(char c) 设置此文本字段的回显字符。

3).setEditable(boolean b)

2.Label

3.TextArea:可以输入多行文本

 

 运行结果:

AWT的五大布局管理器(java. awt包中的五个类)
1.FlowLayout:该布局管理器将组件从左到右或从上到下放置,是Panel和applet的默认布局管理器。
2.BorderLayout:该布局管理器将组件分为东、西、南、北、中五个区域,是Windows、Dialog和Frame容器的默认布局管理器。
3.CardLayout:该布局管理器将加入到容器的组件作为卡片,把每个组件放置在一个单独的卡片上,后面的卡片将覆盖前面的卡片,每次只能看到一张卡片。
4.GridLayout:该布局管理器将容器分为相同尺寸的网格,将组件依次放入网格中。
5.GridBagLayout:该布局管理器将容器分为相同尺寸的网格,但组件不只是占一个网格,一个组件可以占多个网格位置。

posted on 2015-07-03 16:12  夏晴  阅读(176)  评论(0编辑  收藏  举报