图像界面

java.awt/抽象窗口工具集

界面声明:

JFrame jframe = new JFrame();

方法:

jframe.setVisible(true)//窗口显示
​
jframe.setLocation(x轴位置,y轴位置)//定义窗口显示位置
​
jframe.setSize(宽度,高度)//设置窗口的大小

jframe.add()//添加控件或者容器

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//点击界面的右上角“X”图标时关闭程序
//默认为HIDE_ON_CLOSE,隐藏界面
//该程序不会自动执行
​
jframe.setTitle("界面名字")//设置界面的名字

pack();//打包,让窗口中控件更紧凑
​
jframe.setResizable(falae);//设置让窗口大小不可变
​
jframe.dispose();//关闭当前窗口

布局

自定义布局

jframe.setLayout(null);//布局设定为空
//在自定义布局下的每个控件需要设定大小与摆放位置

边框布局/BorderLayout

jframe.setLayout(new BorderLayout());//设定为边框布局管理器
//该管理器设定布局为5个块东、南、西、北、中
//需要注意的是北方的布局与南方的布局是独占一行的
/**边框布局的add()方法*/
jframe.add(控件,BorLayout.方向名词)

流式布局/FlowLayout

jframe.setLayout(new FlowLayout());
//如同HTML中的浮动
//浮动布局会随着界面大小变化而变化

网格布局/GridLayout

jframe.setLayout(new GridLayout());
//先满足行数要求,列数自动
//网格布局中,控件的大小是当前界面大小的平均

控件及方法

JButton/按钮

JButton btn = new JButton("确定");//生成按钮,并定义按钮中的文字

JPanel/局部容器

特性默认布局管理为FlowLayout

JLabel/文字显示

JLabel jl = new JLabel(显示的文字);

JTextField/输入框

JTextField jtf = new JTextField(输入框长度);
String str = jtf.getText();//获取控件输入的值,返回对象是字符串
jtf.setText(String str);//向字符串中输入信息

JComboBox<>/下拉列表,范型

JComboBox jcb = new JComboBox();
jcb.addTtem();//添加下拉列表的一项
jcb.getSelectedItem();
//获取选择的下拉列表得值
//返回值为Objecet,需要转型

JRadioButton/单选按钮&&ButtonGroup/单选组

JRadioButton jrb = new JRadioButton(单选按钮名);
ButtonGroup bg = new ButtonGroup();
bg.add(jrb);//单选按钮单独new时时单独的,需要通过添加到ButtonGroup中归为一组

JPasswordField/密码框

JPasswordField jpf = new JPasswordField(输入框长度);
String str = new String(jpf.getPassword());
//获取密码框中的输入
//因返回类型是char[],在这里我们转化为String类型

弹出框

JoptionPane.showMessageDialog(1,2,3,4);
//1.给null表示在屏幕的中间显示
//2.就是要显示的信息
//3.标题
//4.信息前显示的图标样式

Font/字体

Font font = new Font(字体,样式,大小);
JLable的对象.setFont(font);//添加字体样式
JLable的对象.setForeground(color.颜色单词);//改变字体颜色

事件监听器

btn.addActionListenter(new ActionListener(){
    public void actionperformed(ActionEvent e){
        //控件触动时要产生的操作
    }
});

设计界面步骤

  1. 自定义界面类名 extends Frame

  2. 在构造器中书写窗口的属性,jframe.setVisible(true)//窗口显示,必须有

  3. 在其他类中创建你的自定义类

其他

  1. 在匿名内部类中使用this指代的是匿名内部类,要指代外部类通过,外部类名.this 来改变指向

12-26 21:51
查看更多