/*Java.awt.List是一个滚动列表组件,它与Choice最大的不同是:该组件可以同时选择多个选项
1.构造方法
List():创建的滚动列表有默认的可见行
List(int n):创建的滚动列表的行数为n
List(int n,boolean b):b决定滚动列表是否允许多项选择;默认为不允许
2.常用方法
public void addActionListener(ActionListener l):双击选项时发生的事件
public void addItemListener(ItemListener l):单击选项时发生的事件
public String[] getSelectedItems():返回滚动列表中所有被选中的选项名称的字符串数组
public int[] getSelectedIndexs():返回滚动列表中被选中的所有选项的索引值的数组
其它方法与Choice组件类似
*
* */
package awt2yue24;
import java.awt.*;
import javax.swing.Box;
public class CommonComponent {
/*
* 把所有组件定义成成员变量
*/
Frame f = new Frame("测试窗口");
//定义一个按钮 ok
Button ok = new Button("确认");
//定义一个选框组
CheckboxGroup cbg = new CheckboxGroup();
//定义一个单选框(处于cbg一组),初始处于被选中状态
Checkbox male = new Checkbox("男", cbg, true);
Checkbox female = new Checkbox("女", cbg , false);
//复选框 ,也是Checkbox 构造方法没放在一个组里,就是复选框
Checkbox married = new Checkbox("是否已婚", false);
//定义一个下拉选择框
Choice colorChooser = new Choice();
//列表选择框,6行,可以多选
List colorList = new List(6,true);
//5行20列的多行文本域
TextArea ta = new TextArea(5,20);
//定义一个50列的单行文本域
TextField name = new TextField(50);
//创建一个设置窗口的成员方法
public void init()
{
//颜色选择框中添加颜色选择内容
colorChooser.add("红色");
colorChooser.add("绿色");
colorChooser.add("蓝色");
//列表选择框中添加选择内容
colorList.add("红色");
colorList.add("绿色");
colorList.add("蓝色");
//创建一个容器 Panel 装载文本框和按钮
Panel button = new Panel();
button.add(name);
button.add(ok);
/*Frame是框架,这个是要实现的功能界面的布局,默认管理器“BorderLayout”;
Panel是面板,这个是要实现的某个功能模块的具体实现,默认管理器“FlowLayout“;
*
* */
f.add(button,BorderLayout.SOUTH);
//创建一个Panel 装载下拉选择框 三个Checkbox
Panel checkPanel = new Panel();
checkPanel.add(colorChooser);
checkPanel.add(male);
checkPanel.add(female);
checkPanel.add(married);
//创建建一个垂直排列的盒子Box 里面装载多行文本域,Panel
Box topLeft = Box.createVerticalBox(); //Vertical是垂直的意思,默认的布局就是垂直排列的,里面的小元素排版方式
topLeft.add(ta);
topLeft.add(checkPanel);
//创建一个水平排列的Box 存储topLeft 和colorList
Box top = Box.createHorizontalBox();
top.add(topLeft);
top.add(colorList);
//把top容器放在最大容器f的最中间
f.add(top);
f.pack();
f.setVisible(true);
}
public static void main(String[] args)
{
new CommonComponent().init();
}
}
//这个代码要配合运行结果好好分析一下,分析透彻
运行结果:
分析透彻和背熟这些代码