一、AWT层次结构图
二、Canvas组件
1、Canvas是具有最基本和最简单的GUI功能的组件
2、Canvas代表屏幕上的一块白色的矩形区域,程序能够在这个部件表面绘图,也能够捕获用户的操作,产生相应的事件。
3、当要设计自己定制的具有GUI功能的组件类时,继承Canvas将会大大简化编程的难度。
三、菜单
菜单有三个主要要素,MenuBar、Menu、MenuItem。先创建一个MenuBar对象,再创建Menu对象、MenuItem对象。
然后分别把Menu对象加入到MenuBar,把MenuItem对象加入到Menu对象,就可以构成系统的菜单。
要对菜单项的单击做出反应,相应的菜单项就要增加实现了ActionListener接口的监听对象。
四、Container
Container类是所有容器类的父类,Container.add方法将组件添加到容器中。同时,Container也是Component的子类,
因此也可以作为组件添加到其他容器上。Container的主要子类如下图所示:
五、Dialog与FileDialog类
Dialog类的两种常用的构造方法;
1、public Dialog(Frame owner, String title);//创建非模式对话框
2、public Dialog(Frame owner, String title, boolean modal);
六、CheckBox
1、CheckBox类用来建立单选按钮和多选按钮
2、创建多选按钮,只需要使用构造函数
CheckBox(String label,boolean state);
3、创建单选按钮,需要使用构造函数
CheckBox(String label,boolean state,CheckboxGroup group);
七、Choice
1、Choice类用来制作单选下拉列表框
2、Choice类的高级事件为ItemEvent,对应的监听器接口为ItemListener,该接口中只有一个itemStateChanged方法
八、Panel与ScrollPane类
1、Panel类是一种容器类,用于产生一种特殊的空白面板,可以容纳其他的组件,但不能独立存在。Panel类必须被添加到其他容器中,如Window或Applet。
2、ScrollPane类是一种容器,用于产生滚动窗口,通过滚动条在一个较小的容器窗口中显示较大的子部件。ScrollPane也不能独立存在,必须被添加到其他容器中。ScrollPane类没有布局管理器,它上面只能放一个组件,如果要添加多个组件,可以先将组件放在Panel中,再将Panel放在ScrollPane上。
九、布局管理器
1、一个容器中的各个组件之间的位置和大小关系就被称之为布局。
2、Java语言提供了布局管理器来管理组件在容器中的布局,而不是直接使用位置坐标来设置各个组件的位置和大小。
3、AWT中的布局管理器类:
- BorderLayout
BorderLayout是Window的默认的布局管理器,分为东西南北中五个部分。BorderLayout最多只能放5个组件,要想放多个组件,要先将部分组件放在Panel中,然后再把Panel添加到BorderLayout中。如果组件小于5个,没有放置组件的地方,将被相邻的组件占用。
- FlowLayout
FlowLayout是Panel默认的布局管理器。容器中的组件从左到右,从上到下依次排列。
- GridLayout
GridLayout布局管理器将容器划分成若干行列的网格,在容器上添加组件时,它们会按从上到下,从左到右的顺序在网格中排列。在GridLayout的构造函数中,需要指定在容器上划分的网格的行、列数。GridLayout的网格大小都是一致。
- CardLayout
CardLayout布局管理器能够实现将多个组件放在同一个容器区域内的交替显示,相当于多张卡片在叠一起,在任何时候都只能看到最上面的一个。
- GridBagLayout
功能强大,但比较复杂。
十、取消布局管理器
调用Container.setLayout(null)方法取消布局管理器设置。在这种情况小,可以调用Component.setBounds方法用绝对坐标设置容器上个的每个组件的大小和位置。不使用布局管理器时,如果容器大小发生变化,有可能会导致部分组件无法显示。
阅读(3194) | 评论(0) | 转发(0) |