java AWT组件库,
1、按钮(Button),最常用的组件
构造方法:Button b=new Button(“Quit”);
当按钮被点击后,会产生ActionEvent事件,需ActionListener接口进行监听和处理事件
ActionEvent的对象调用getActionCommand()方法可以得到按钮的标识名,缺省按钮名为label
用setActionCommand()可以为按钮设置组件标识符
2、复选框(Checkbox),提供简单的”on/off”开关,旁边现实文本标签
构造方法:
setLayout(new GridLayout(3,1));
add(new Checkbox(“one”,null,true));
add(new Checkbox(“two”));
add(new Checkbox(“three”));
用ItemListener来监听ItemEvent事件
当复选框状态改变时用getStateChange()获取当前状态
使用getItem()获得被修改复选框的字符串对象
例:class Handler implements ItemListener
{
public void itemStateChanged(ItemEvent ev)
{
String state=”deseleted”;
if(ev.getStateChanged()==ItemEvent.SELECTED)
{
state=”selected”;
}
System.out.println(ev.getItem()+” “+state);
}
}
3、复选框组(CheckboxGroup)
使用复选框组,可以实现单选框的功能。
方法如下:
SetLayout(new GridLayout(3,1));
CheckboxGroup cbg=new CheckboxGroup();
add(new Checkbox(“one”,cbg,true));
add(new Checkbox(“two”,cbg,false));
add(new Checkbox(“three”,cbg,false));
4、下拉式菜单(Choice)
每次只能选择其中的一项,节省显示空间,适用于大量选项。
Choice Colorchooser=new Chioce();
Colorchooser.add(“Green”);
Colorchooser.add(“Red”);
Colorchooser.add(“Blue”);
Choice用ItemListener接口来进行监听
5、Canvas,一个应用程序必须继承Canvas类才能获得有用的功能
创建一个自定义组件
在画布上完成一些图形处理,则Canvas类中的paint()方法必须被重写
Canvas组件监听各种鼠标,键盘事件。
当在Canvas组件中输入字符时,必须先调用requestFocus()方法。
6、单行文本输入区(TextField),只能显示一行文本
按下回车键时,触发ActionEvent事件,通过ActionListener中的actionPerformed()方法对事件进行相应处理
可以使用setEditable(boolean)方法设置为只读属性
单行文本输入区构造方法如下:
TextField tf1,tf2,tf3,tf4;
tf1=new TextField();
tf2=new TextField(“”,20);//显示区域为20列
tf3=new TextField(“Hello!”);//按文本区域大小显示
tf4=new TextField(“Hello!”,30);//初始文本为Hello!,显示区域为30列
7、文本输入区(TextArea)可以显示多行文本。
使用setEditable(boolean)方法,可以将其设置为只读的
在TextArea中可以显示水平或垂直的滚动条
要判断文本是否输入完毕,可以在TextArea旁边设置一个按钮,通过按钮点击产生的ActionEvent对输入的文本进行处理。
8、列表(List),提供多个文本选项,支持滚动条,可以浏览多项
List lst=new List(4,false);//显示的行数,是否允许多选
lst.add(“Venus”);
lst.add(“Earth”);
lst.add(“JavaSoft”);
lst.add(“Mars”);
cnt.add(lst);
9、框架(Frame),顶级窗口,可以显示标题,重置大小
当Frame被关闭,将产生WindowEvent事件,Frame无法直接监听键盘输入事件
10、对话框(Dialog),是Window类的子类。
对话框和一般窗口的区别在于它依赖于其它窗口
对话框分为非模式(non-modal)和模式(modal)两种。
11、文件对话框(Filedialog)
当用户想要打开或存储文件时,使用文件对话框进行操作
主要代码如下:
FileDialog d=new FileDialog(ParentFr,”FileDialog”);
d.setVisible(trus);
String filename=d.getFile();
12、菜单(Menu)
无法直接将菜单添加到容器的某一位置,也无法使用布局管理器对其加以控制。
菜单只能被添加到菜单容器(MenuBar)中
13、MenuBar
只能被添加到Frame对象中,作为整个菜单树的根基
Frame fr=new Frame(“MenuBar”);
MenuBar mb=new Menubar();
fr.setMenuBar(mb);
fr.setSize(150,100);
fr.setVisible(true);
14、Menu,下拉菜单
可以被添加到MenuBar中或其它的Menu中
Frame fr=new Frame(“MunuBar”);
MenuBar mb=new MenuBar();
fr.setMenuBar(mb);
Menu m1=new Menu(“File”);
Menu m2=new Menu(“Edit”);
Menu m3=new Menu(“Help”);
mb.add(m1);
mb.add(m2);
mb.setHelpMenu(m3);
fr.setSize(200,200);
fr.setVisible(true);
15、MenuItem,是菜单树中的“叶子节点”。
通常被添加到一个Menu中。
对于MenuItem对象可以添加ActionListener,使其能够完成相应的操作
Menu m1=new Menu(“File”);
MenuItem mi1=new MenuItem(“Save”);
MenuItem mi2=new MenuItem(“Load”);
MenuItem mi3=new MenuItem(“Quit”);
m1.add(mi1);
m1.add(mi2);
m1.addSeparator();
m1.add(mi3);
MenuBar和Menu都没有必要注册监听器,只需要对MenuItem添加监听器ActionListener,完成相应操作