GUI
Java
vgraphical user interfaces--图形用户界面,为用户提供界面友好的所见所得的桌面操作环境。java.awt包是Java内置的包,属于Java基本类库,其中包括以下内容:界面组件、布局管理器、事件处理模型、 图形和图像工具等等。要使用到该包中的类,则必须显式地声明如下语句:import java.awt.*;
Swing是在AWT基础上发展而来,改进了用户界面,所需的系统资源更少; Swing是纯Java组件,使所有的应用程序在不同的平台上运行时具有本机外观和相同的行为。javax.swing包包含了一系列Swing控件,使用该包中类,须声明如下语句: import javax.swing.*;
Swing GUI框架:顶级容器、GUI组件和内容窗格。JFrame组件用于在Swing程序中创建窗体。JFrame():创建一个框架,该框架初始为不可见;JFrame(String title):创建一个框架,参数title为窗体标题,该框架初始为不可见;void setBackground(Color c):设置窗体的背景色;Container getContentPane():获得窗体的内容面板,当要往窗体中添加组件或设置布局时,要使用到该方法;void setSize(int w,int h):设置窗体的大小,参数w和h指定宽度和高度void setTitle(String title):以title中指定的值,设置窗体的标题
JPanel是最简单的容器类,应用程序可以将其他组件放在面板提供的空间内。JPanel只能存在于其他的容器,一般放入Frame中 ,Frame可以分为若干个JPanel,在JPanel上进行组件的布局, FlowLayout布局管理器是面板的默认布局管理器,另一方面不能为JPanel设置标题。
布局管理器决定组件在容器上如何摆放、组件的大小;Java中常用的布局有FlowLayout(流式布局)、CardLayout (卡片布局)、BorderLayout(边框布局)、GridBagLayout(网格包布局)、GridLayout(网格布局) 。调用容器对象的setLayout(LayoutManagerlm)方法,为容器设置不同的布局。
JCheckBox和JRadioButton使用示例import java.awt.*;import javax.swing.*;class Hobby extends JPanel { JCheckBox c1 = new JCheckBox('写作',false); JCheckBox c2 = new JCheckBox('音乐',false); JCheckBox c3 = new JCheckBox('跑步',false); JRadioButton rad1 = new JRadioButton('中学'); JRadioButton rad2 = new JRadioButton('高中'); JRadioButton rad3 = new JRadioButton('大学'); JLabel jl = new JLabel('您有什么爱好?' ); JLabel j2 = new JLabel('爱好产生的时间?' ); JButton exitbtn = new JButton('退出'); public Hobby( ) { setLayout(new GridLayout(9,1)); add(jl); add(c1); add(c2); add(c3); add(j2); add(rad1); add(rad2); add(rad3); add(exitbtn); }}