打印本文 打印本文  关闭窗口 关闭窗口  
二级Java考试辅导教程:5.3AWT组件库[1]
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 14:42:27  文章录入:杜斌  责任编辑:杜斌

   5.3 AWT组件库
  本节从应用的角度进一步介绍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);
打印本文 打印本文  关闭窗口 关闭窗口