在使用电脑时,屏幕上会时不时弹出界面或者小窗口。这次,就让我们了解,在Java中如何实现窗体的创建。
1、导入包
Java中要实现窗体的创建,我们要先导入与界面相关代码的包。主要有2个包会使用到。
awt:java.awt包下,java早期采用的界面开发包,布局、尺寸、监听器等等仍然保留使用。
swing:javax.swing包下,组件类类名以J开头。
2、创建窗体需要考虑的内容
按照按照功能分类:
容器组件:装纳其他组件。
顶级容器组件:界面,所有其他的组件都必须添加在顶级容器组件上才能显示。
元素组件:提供和用户交互的功能,输入(输入框、按钮)输出(显示文字、图片)
布局:管理组件在容器组件中如何摆放
流式布局:将所有的组件从左到右依次摆放,一行摆放不下下一个组件,则自动换行
3、开发界面,经常需要使用的内容
顶级容器组件(窗体) JFrame
文本输入框 JTextField
密码输入框 JPasswordField
按钮 JButton
显示文字的标签 JLabel
复选框 JCheckBox
显示图片的标签 JLabel
流式布局 java.awt.FlowLayout
尺寸 java.awt.Dimension
图片 javax.swing.ImageIcon
注:其它不常用方法可以在API文档里查找,使用。
4、开发登陆界面(仿QQ登录界面)
第一步:创建界面类,定义一个显示界面的方法
第二步:创建窗体对象,设置窗体的属性
第三步:创建各个组件的对象,设置组件的属性,添加组件到窗体上
第四步:设置窗体可见
最后一步:在主方法中创建界面类的对象,调用显示界面的方法
public class LoginUI {
public void showUI() {
//窗体大小.位置.布局.
JFrame loginJFrame = new JFrame();
loginJFrame.setSize(700, 600);
loginJFrame.setLocationRelativeTo(null);
FlowLayout flow = new FlowLayout();
loginJFrame.setLayout(flow);
//图片标签
ImageIcon icon = new ImageIcon("C:\\Users\\MAIBENBEN\\Desktop\\微信图片_20190604161027.png");
JLabel iconJLabel = new JLabel(icon);
oginJFrame.add(iconJLabel);
//文本输入框
JTextField field = new JTextField();
Dimension dimension = new Dimension(400, 50);
field.setPreferredSize(dimension);
loginJFrame.add(field);
//文字标签
JLabel registerJLabel = new JLabel("注册账号");
registerJLabel.setForeground(Color.blue);
loginJFrame.add(registerJLabel);
//密码输入框
JPasswordField jPasswordField = new JPasswordField();
jPasswordField.setPreferredSize(dimension);
oginJFrame.add(jPasswordField);
//文字标签
JLabel registerJLabel2 = new JLabel("找回密码");
loginJFrame.add(registerJLabel2);
registerJLabel2.setForeground(Color.blue);
//复选框
JCheckBox box1 = new JCheckBox("记住密码");
JCheckBox box2 = new JCheckBox("自动登录");
Dimension d = new Dimension(300, 50);
box1.setPreferredSize(d);
box2.setPreferredSize(d);
loginJFrame.add(box1);
oginJFrame.add(box2);
//登录按钮
JButton button = new JButton("登录");
Dimension dimension2 = new Dimension(300, 50);
button.setPreferredSize(dimension2);
loginJFrame.add(button);
button.setBackground(Color.BLACK);
button.setForeground(Color.white);
//设置可见
loginJFrame.setVisible(true);
}
public static void main(String[] args) {
LoginUI ui = new LoginUI();
ui.showUI();
}
}