JavaSe基础---GUI设计
# GUI 设计
-
1.Swing 工具包下有 MVC 结构,所谓 MVC 结构就是:模型 (数据)+ 视图 (界面)+ 控制 (监听事件)
-
2.JFrame 窗体
-
构造 JFrame 对象
-
设定窗体宽高 setSize ()
-
设定窗体可见 setVisible ()
-
设定关闭方式 (根据情况设定)
-
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
-
-
DO_NOTHING_ON_CLOSE”、“DISPOSE_ON_CLOSE”、“HIDE_ON_CLOSE”、“EXIT_ON_CLOSE”。
- 第一种表示什么也不做就将窗体关闭;
- 第二种表示任何注册监听程序对象后会自动隐藏并释放窗体;
- 第三种表示隐藏窗口的默认窗口关闭;
- 第四种表示退出应用程序默认窗口关闭。
-
3.Swing 包
- 文本框 ----JTextField
- 密码框 ----JPasswordField
- 标签 ----JLable
- 复选框 -----jCheckBox
- 单选框 -----JRadioButton (同一组单选按钮必须先创建 ButtonGroup,然后把单选框组件放入到 ButtonGroup 中)
# 登录界面 Demo
# 一、思路
- (1) 用到的窗体
- 这次项目中使用的窗体为 JFrame,实现图形界面,首先必须有一个顶级窗体 - (2) 使用到的标签
- Jlabel 标签元素类,显示文字和图片
- JTextField 文本输入框元素组件类,接收用户输入信息并将其显示
- JPasswordField 密码输入框组件类,接收用户输入的信息,然后把每一个字符都用一个加密符号显示
- JButton 按钮元素组件类,显示文字或图片,也可以一起显示,可以点击 - (3) 使用到的布局
- java.awt.FlowLayout 流式布局类
- java.awt.Dimension 封装组件宽度和高度的类 - 布局类是针对容器组件的,它会让添加到容器上的组件按照布局类的方式去排列对齐。
- 如果我们没有设置窗体的布局,那么我们添加的组件就会出现覆盖的问题,最后只会显示最后添加的那个组件流式布局的效果类似于 word 文档,对组件按行进行排列,当前行满了再放到下一行。但是不能像 word 一样回车换行。
# 二、项目逻辑
- 创建 JFrame 窗体
- 1. 设置窗体文字
- 2. 设置窗体大小
- 3. 设置窗体大小不可调 (setResizable(false))
- 4. 设置窗体相对于另一个窗体居中位置 (setLocationRelativeTo(null))
- 5. 设置窗体关闭
- 6. 设置窗体居中显示
- 使用流式布局
- 1. 创建流式布局对象并实例化
- 2. 设置对齐方式为居中,组件间隔为 10 (视情况而定)
- 设置除顶级窗体大小外,其他组件大小
- Dimension(hight,weight)
- 创建 JLabel 标签并添加到窗体
- 1. 创建用户名和密码标签
- 2. 添加到窗体
- 创建 JTextField 和 JPasswordField 组件并添加到窗体
- 1. 创建输入文本框和密码框对象
- 2. 调用 setPreferredSize () 方法设置文本框和密码框大小
- 3. 添加到窗体
- 创建 JButton 组件并添加到窗体
- 1. 创建登录和注册按钮标签
- 2. 调用 setText () 方法在按钮上显示登录和注册
- 3. 添加到窗体
- 使窗体可显示
1 |
|
# 参考链接:
JavaSe基础---GUI设计
https://rofgd.github.io/2020/05/16/JavaSe基础---GUI设计/