您的位置:首页 > 编程语言 > Java开发

[疯狂Java笔记]AWT:常用组件

2016-03-03 13:36 393 查看
1. 常用组件:

1) 这里先不演示Canvas(画布,在后面绘图中会讲到)、Scrollbar(滚条)、ScrollPane|Panel|Frame(之前讲过了);

2) 按钮类:

i. Button:非常常见的单击按钮,Button(String Label); // 需要按钮上的文本标签

ii. Checkbox:复选框;

iii. CheckboxGroup:用该组件包裹复选框可使复选框边单选框;

!CheckboxGroup的构造器就一个默认的无参构造器:CheckboxGroup();

!!Checkbox的构造器依据是否要变成单选框来决定:

a. 保持复选框:CheckboxGroup(String label, boolean state); // label是文本内容,state表示初始时是否选中

b. 变成单选框:CheckboxGroup(String label, CheckboxGroup group, boolean state); // group指定了单选按钮所属的组别

!!注意:如果将一组单选按钮加入容器并不是只将包裹它们的那个CheckboxGroup加入容器,而是直接将各个单选按钮加入容器!

iv. Label:标签,静态提示性文本框,Label(String text); // text即提示文本

3) 列表类:

i. List:列表框,可以添加多个项目,构造器及简单用法

a. List(int rows); // 指定最多可现实多少个项目,实际可以存放更多项目,默认只能单选

b. List(int rows, boolean multipleMode); // 第二个参数指定是否开启多选,true表示可以多选

c. void add(String item); // 添加一个项目,直接指定项目的文本标签

ii. Choice:下拉列表框,构造器及简单用法

a. 构造器就只有默认无参构造器:Choice();

b. 添加项目:void add(String item); // 和List的一样,比List少一个多选模式,因为无法多选,列表是下拉显示的,只能单选

4) 编辑框:

i. TextArea:多行编辑区域,TextArea(int rows, int columns); // 指定是几行几列的

ii. TextField:单行编辑区域,TextField(int coloumns); // 指定长度

!!!以上所有组件具体用法可查API,这里只提供最基本的创建方式和简单的使用法;

5) 示例:

public class AwtTest {

public static void main(String[] args) {
Frame f = new Frame("Component Test");
Box top = Box.createHorizontalBox();
Box topLeft = Box.createVerticalBox();
TextArea ta = new TextArea(5, 20);
Panel pCheckboxs = new Panel();
Choice chColor = new Choice();
chColor.add("red");
chColor.add("green");
chColor.add("blue");
CheckboxGroup cbg = new CheckboxGroup();
Checkbox female = new Checkbox("female", cbg, false);
Checkbox male = new Checkbox("male", cbg, true);
Checkbox married = new Checkbox("married?", false);
pCheckboxs.add(chColor);
pCheckboxs.add(female);
pCheckboxs.add(male);
pCheckboxs.add(married);
topLeft.add(ta);
topLeft.add(pCheckboxs);
List lColor = new List(6, true);
lColor.add("red");
lColor.add("green");
lColor.add("blue");
top.add(topLeft);
top.add(lColor);
Panel bottom = new Panel();
TextField string = new TextField(50);
Button btn = new Button("OK");
bottom.add(string);
bottom.add(btn);
f.add(top);
f.add(bottom, BorderLayout.SOUTH);

f.pack();
f.setVisible(true);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: