![]() ![]() |
|
二级Java考试辅导教程:5.3AWT组件库[1] | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:42:27 文章录入:杜斌 责任编辑:杜斌 | |
|
|
本节从应用的角度进一步介绍AWT的一些组件,目的使大家加深对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()获得被修改复选框的字符串对象。来源:www.examda.com 例5.13 class Handler implements ItemListener { public void itemStateChanged(ItemEvent ev){ String state = "deselected"; if (ev.getStateChange() = = 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 Choice(); 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) 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); |
|
![]() ![]() |