JAVA中AWT基本组件及其使用方法(一)(2007-07-24 23:12:32)转载▼标签: 水之后java编程awt 分类: JAVA-初级
一、按钮:
/**
* 按钮(Button)是JAVA图形用户界面的基本组件之一,它有两个构造方法:
* public Button()
* public Button(String lable)
* 其中第一种方法构造一个不带标签的按钮,第二种方法构造一个带标签的按钮。
* 当用户用鼠标单击按钮时,AWT事件处理系统将向按钮发送一个ActionEvent事件对象。如果应用程序需要对此作出反应,那么就
需要为注册事件监听程序并实现ActionListener接口。
* 下面的程序是一个使用按钮的例子。
* @author ifwater
*/
import java.awt.*;
import java.awt.event.*;
class ButtonExample extends WindowAdapter implements ActionListener{
//定义基本组件
Frame f;
Button b;
TextField tf;
int tag=0;
//初始化按钮组件
public static void main(String args[]) {
ButtonExample be=new ButtonExample();
be.go();
}
public void go(){
//初始化其他组件,并且通过ActionListener()方法为按钮注册监听程序
f=new Frame("Button Example");
b=new Button("Sample");
b.addActionListener(this);
f.add(tf,"South");
tf=new TextField();
f.add(tf,"Center");
f.addWindowListener(this);
f.setSize(300,500);
f.setVisible(true);
}
//实现ActionListener接口中的actionPerformed()方法
public void actionPerformed(ActionEvent e){
String s1="You hava Pressed the Button";
String s2="You do another time";
if(tag==0){
tf.setText(s1);
tag=1;
}else {
tf.setText(s2);
tag=0;
}
}
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
二、复选框
/**
* 复选框(Checkbox)是一个带标签的小方框,具有“开”和“关”两种状态
* 用户对复选框的操作将引发ItemEvent事件,该事件需要由实现ItemEvent接口的类的处理
* 在ItemEvent类中定义了getStateChange()方法,通过该方法可以判断用户对复选框所执行的操作是“开”还是“关”,其返回值为常
量Item.DESELECTED或Item.SELECTED
* ItemEvent类中还定义了getItem()方法,该方法返回值为一字符串,表示用户操作所涉及的复选框的标签内容
* 复选框的有三种基本的构造方法:
* (1)public Checkbox() 构造一个不带标签、初始状态为“关”的复选框
* (2)public Checkbox(String label)构造一个带标签、初始状态为“关”的复选框
* (3)public Checkbox(String label,boolean state)构造一个带标签,其初始状态由boolean型变量state决定
* @author ifwater
*/
import java.awt.*;
import java.awt.event.*;
class CheckboxExample extends WindowAdapter implements ItemListener{
//定义一个框架f、面板p、复选框one、复选框two、复选框three和文本框TextField
Frame f;
Panel p;
Checkbox one,two,three;
TextField tf;
public static void main(String args[]){
//创建一个CheckboxExample类ce,它的方法为go()
CheckboxExample ce = CheckboxExample();
ce.go();
}
public void go(){
//前面对f和p进行了定义,现在通过new对其进行初始化
f = new Frame("Checkbox Example");
p = new Panel();
//通过初始化,创建三个复选框
one = new Checkbox("one");
two = new Checkbox("two");
three = new Checkbox("three");
//对三个复选框注册事件监听程序
one.addItemListener(this);
two.addItemListener(this);
three.addItemListener(this);
//使用add方法,将三个复选框加到f和p对象中
p.add(one);
p.add(two);
p.add(three);
f.add(tf,"South");
//注册事件监听程序,设定窗口f的大小,并把f以及它包含的组件显示出来对用户可见
f.addWindowListener(this);
f.setSize(300, 500);
f.setVisible(true);
}
//实现ItemListener接口中的itemStateChanged()方法
public void itemStateChanged(ItemEvent e){
String state = "deselected";
String st;
if(e.getStateChange() == ItemEvent.SELECTED){
state = "selected";
}
st = e.getItem() + " " + state;
tf.setText(st);
}
//覆盖WindowAdapter类中的windowClosing()方法
public void windowClosing(WindowEvent e){
//结束程序运行
System.exit(0);
}
}
三、单选框
/**
* 单选按钮时复选框组中特殊的构造方法:
* (1) public Checkbox(String label,boolean state,CheckboxGroup group)
* (2) public Checkbox(String label,CheckboxGroup group,boolean state)
* 在这两种构造方法中均使用了CheckboxGroup类型的参数,通过这两种构造方法,可以创建出多个从属于同一个复选框组
(CheckboxGroup group)的、带标签的复选框
* 复选框的初始状态有boolean型变量state指定
* @author ifwater
*/
import java.awt.*;
import java.awt.event.*;
class CheckboxGroupExample extends WindowAdapter implements ItemListener{
//各个框架的定义
Frame f;
Panel p;
CheckboxGroup cbg;
Checkbox one,two,three;
TextField tf;
public static void main(String args[]){
CheckboxGroupExample ce = new CheckboxGroupExample();
ce.go();
}
public void go(){
//通过对已经定义的f、g进行初始化,创建f、g
f = new Frame("CheckboxGroup Example");
p = new Panel();
//通过对已经定义复选框进行初始化,创建三个从属于同一个组的复选框
cbg = new CheckboxGroup();
one = new Checkbox("One",cbg,false);
two = new Checkbox(