(1).创建复选框(Checkbox)
复选框又称为检测盒。例如,在多选题的界面设计中,可通过以下方式创建若干选项。
String ch[] = {"A","B","C","D"};
Checkbox cb[] =new Checkbox[4];
for(int i=0; i<ch.length;i++)
cb[i]=new Checkbox(ch[i]); //创建A,B,C,D4个选项
(2)事件处理
复选框的事件注册与下拉列表相同,在事件处理方法内可通过如下方法来获取和设置某个复选框的状态。
▊ boolean getState(); 设置复选框是否被选中,返回true代表被选中
▋ void setState(boolean value); 设置复选框的状态,vlaue为true表示选中。
(3)代码举例实现Checkbox类,上代码:
import java.awt.Checkbox;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class CheckboxDemo extends Frame implements ItemListener{
Checkbox box1=new Checkbox("Blue"); //声明复选框box1
Checkbox box2=new Checkbox("Green"); //声明复选框box2
public CheckboxDemo(){ //构造方法
super("复选框实例");
this.setLayout(new FlowLayout());
this.setLocation(100, 100);
setSize(200,300);
add(box1);
add(box2);
box1.addItemListener(this); //注册监听者ItemListener
box2.addItemListener(this); //注册监听者ItemListener
addWindowListener(new WindowAdapter(){ //注册windowListener监听者,实现窗口关闭
public void windowClosing(WindowEvent e){
dispose();
}
});
this.setVisible(true); //显示窗口
}
public static void main(String[] args) {
Frame chbox=new CheckboxDemo(); //创建对象chbox
}
@Override
public void itemStateChanged(ItemEvent e) { //实现监听者方法
if(box1.getState()) //如果box1选中,则实现背景变蓝
{
this.setBackground( Color.BLUE);
}
if(box2.getState()) //如果box2选中,则实现背景变绿
{
this.setBackground(Color.green);
}
}
}
附上运行效果图:
如果本文对你有帮助,希望关注本博客。