java gui介绍_Java-GUI简介(一)

图像界面

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.setBounds(x,y,宽,高)//设定位置,大小

布局

自定义布局

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

边框布局/BorderLayout

575ecc6064801093c3827183ef88a7bb.png

12047691.html

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

/**边框布局的add()方法*/jframe.add(控件,BorLayout.方向名词)

流式布局/FlowLayout

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

网格布局/GridLayout

a7cc6ebd13b1736c0275c3a8b8d16993.png

12047691.html

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

控件及方法

JButton/按钮

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

JPanel/局部容器

特性默认布局管理为FlowLayout

JLabel/文字显示

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

JTextField/输入框

JTextField jtf = newJTextField(输入框长度);

String str= jtf.getText();//获取控件输入的值,返回对象是字符串

jtf.setText(String str);//向字符串中输入信息

jtf.setHorizontaAlignment(JTextField.RIGHT);//水平右边开始显示

jtf.setEditable(false);//设置输入框中数据不可改变

JComboBox<>/下拉列表,范型

JComboBox jcb = newJComboBox();

jcb.addTtem();//添加下拉列表的一项

jcb.getSelectedItem();//获取选择的下拉列表得值//返回值为Objecet,需要转型

jcb.addItemListener(new ItemListener(){//下拉列表独有监视器//如果下拉菜单状态改变会触发两次,一次为取消当前对象,依次为选择新对象

public voiditemStatechanged(TtemEvent e){if(e.getStatechanged == ItemEvent.SELECTED){}//让其只执行新选择的事件

}

});

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

JRadioButton jrb = newJRadioButton(单选按钮名);

ButtonGroup bg= newButtonGroup();

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

JPasswordField/密码框

JPasswordField jpf = newJPasswordField(输入框长度);

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

JlistFrame/列表与JScrollpane/滚动条

JlistFrame<> jf = new JlistFrame<>(E[]);//列表中不可以放集合

jf.setVisibleRowCount(8);//设置默认可见高度

jf.setFixedcellwidth(int);//设置宽度

jf.setFixedcellHeight(int);//设置每行高度

JScrollpane jsc = new JScrollpane(jf);//为列表添加滚动条

Jlist没有直接向里放如集合对象的方法或者构造器,只有一个setModel方法,但是该方法需要一个ListModel接口的对象

DefaultListModel是ListModel的实现类,其类似于ArrayList.DefaultListModel的添加addElement();删除removeElement();

Jtable/表格

JTable jt = new JTable(表头数组,数据对象数组(二维));

Container/容器

类似于JPanel,由于windos的缓冲显示问题,为了集体显示

弹出框

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

Font/字体

Font font = newFont(字体,样式,大小);

JLable的对象.setFont(font);//添加字体样式

JLable的对象.setForeground(color.颜色单词);//改变字体颜色

事件监听器

btn.addActionListenter(newActionListener(){public voidactionperformed(ActionEvent e){//控件触动时要产生的操作

e.getActionCommand();//返回事件源的名字

e.getSource();//返回发出这件事事件源本身,返回类型为Object

}

});

设计界面步骤

自定义界面类名 extends Frame

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

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

其他

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

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值