JavaSE高级之GUI编程
下面主要用到了java中的swing进行界面设计,当然java的GUI不如C#的设计的好看,不过原理还是要会的。
1. GUI Graphical User Interface 用户图形界面
a) 主要包括菜单栏,窗口,工具条,按钮等;
b) Java提供了两个GUI开发的包 java.awt 和 java.swing, java.awt中的Component抽象类是javaGUI中所有类的父类。它规定了所有GUI组件的的的基本特性 j ava.swing 是在java.awt 的基础上构建起来的,引入了许多新的功能和新的特性
c) GUI组件
i. 基本组件:在其控件中不能容纳其他组件,如按钮,文本框等
ii. 容器:可以在其上面添加其他组件,如窗口,对话框等;
2. Swing容器和组件
a) 创建顶层容器(窗口的实现)------类JFrame的使用
i. 实例:JFrame frame = new JFrame(String title);
ii. setLocation(int x, int y) 设置窗体的显示位置
iii. setSize(int width, int height) 设置窗体的大小
iv. setVisible(Boolean b) 设置窗体是否可见
v. 获得内容面板:Container con=fram.getContentPane();在内容面板上添加组件
b) 基本组件分类
i. 文本输入组件: JTextField---文本框 JPasswordField---密码框 JTextArea---文本域 JLabel---标签
ii. 按钮组件:JButton---普通按钮 JCheckBox---复选框 JRadioButton—单选框 JComboBox –下拉列表框
c) JTextField中常用方法
i. 实例化: JTextField text = new JTextField(int columns);
ii. Public String getText() 获取文本框的内容
iii. Public void setTest(String text)设置文本框的内容
d) JTextArea 中长用方法4
i. 实例化: JTextArea area = new JTextArea(int rows, int columns);
ii. Public String getText() 获取文本域内容
iii. Public void setText(String Text) 设置文本域中的内容
iv. Public void append(String Text)追加内容
//添加文本域 JTextArea area = new JTextArea(10,20); //设置文本域文字 area.setText("adfa"); //追加内容 area.append("1345"); area.append("543254");
v. con.add(area);
e) JCheckBox 复选框
i. 实例化:JCheckBox check = new JCheckBox(String title,Boolean selected);
1 //添加复选框 2 3 JCheckBox check = new JCheckBox("男",true); 4 5 con.add(check);
ii. con.add(button);
f) JRadioButton 单选框
i. 实例化:JRadioButton radio = new JRadioButton(String titile, Boolean Selected);
g) ButtonGroup按钮组的使用
i. 实例化: ButtonGroup bg = new ButtonGroup();
ii. 把同组的按钮添加在bg中
iii. 再把每个按钮添加在Frame中
1 //添加单选按钮组 2 3 ButtonGroup g = new ButtonGroup(); 4 5 JRadioButton radio0 = new JRadioButton("Radio1"); 6 7 JRadioButton radio1 = new JRadioButton("Radio2"); 8 9 g.add(radio1); 10 11 g.add(radio0); 12 13 con.add(radio1); 14 15 con.add(radio0); 16 17 18 19 //添加不同组的单选按钮 20 21 JRadioButton radio3 = new JRadioButton("Radio3");
iv. con.add(radio3);
h) JComboBox 下拉菜单
i. 实例化:JComboBox cb = new JComboBox(Object[] item);
1 con.add(cb);
i) JPanel类是最简单的容器类可容纳各类基本组件,包括其他面板
i. JPanel可以作为面板组件添加至窗体
1. Jframe.getContentPane.add(JPanel p);
2. Jframe.setContentPane(JPanel p);
//添加面板JPanel JPanel p = new JPanel(); //添加至窗体 con.add(p); //往p上添加内容
3. p.add(radio3);
4. p = new JPanel(LayoutManager layout);