JavaSwing界⾯设计UI(全)
Java GUI 图形界⾯窗⼝开发基础教程,本教程将系统性地详细介绍 Java Swing 开发中常⽤的⼀些组件、布局管理器等相关知识技术,并且每章节都将通过代码实例展⽰实际应⽤。
教程总⽬录:
1. Swing简介
Swing 是 Java 为图形界⾯应⽤开发提供的⼀组⼯具包,是 Java 基础类的⼀部分。
Swing 包含了构建图形界⾯(GUI)的各种组件,如: 窗⼝、标签、按钮、⽂本框等。
Swing 提供了许多⽐ AWT 更好的屏幕显⽰元素,使⽤纯 Java 实现,能够更好的兼容跨平台运⾏。
为了和 AWT 组件区分,Swing 组件在javax.swing.*包下,类名均以 J 开头,例如: JFrame、JLabel、JButton等。
2. Swing组件
⼀个 Java 的图形界⾯,由各种不同类型的“元素”组成,例如: 窗⼝、菜单栏、对话框、标签、按钮、⽂
本框等等,这些“元素”统⼀被称为 组件(Component)。
组件按照不同的功能,可分为 顶层容器、中间容器、基本组件。⼀个简单窗⼝的组成,如下层级结构所⽰:
顶层容器
菜单栏
中间容器
基本组件
基本组件
组件类型的继承关系:
顶层容器 属于窗⼝类组件,继承⾃java.awt.Window;
中间容器 和 基本组件 继承⾃javax.swing.JComponent。
2.1 顶层容器
顶层容器属于窗⼝类组件,可以独⽴显⽰,⼀个图形界⾯⾄少需要⼀个窗⼝,例如:
#组件描述
1⼀个普通的窗⼝(绝⼤多数 Swing 图形界⾯程序使⽤ JFrame 作为顶层容器)
2对话框
2.2 中间容器
中间容器充当基本组件的载体,不可独⽴显⽰。中间容器可以添加若⼲基本组件(也可以嵌套添加中间容器),对容器内的组件进⾏管理,类似于给各种复杂的组件进⾏分组管理。最顶层的⼀个中间容器必须依托在顶层容器(窗⼝)内。
常⽤的中间容器(⾯板):
#组件描述
1⼀般轻量级⾯板容器组件
2带滚动条的,可以⽔平和垂直滚动的⾯板组件
java基础教程第三版pdf
3分隔⾯板
4选项卡⾯板
4选项卡⾯板
#组件描述
5层级⾯板
特殊的中间容器:
#组件描述
1菜单栏
2⼯具栏
3弹出菜单
4内部窗⼝
2.3 基本组件
基本组件是直接实现⼈机交互的组件。
常⽤的简单的基本组件:
#组件描述
1标签
2按钮
3单选按钮
4复选框
5开关按钮
6⽂本框
7密码框
8⽂本区域
9下拉列表框
10列表
11进度条
12滑块
选取器组件:
#组件描述
1⽂件选取器
2颜⾊选取器
其他较为复杂的基本组件:
#组件描述
1表格
2树3. 布局管理器
把 Swing 的各种组件(JComponent)添加到⾯板容器中(JPanel),需要给⾯板容器指定布局管理器(LayoutManager),明确容器(Container)内的各个组件之间的排列布局⽅式。
常⽤的布局管理器:
#布局管理器描述
1流式布局,按组件加⼊的顺序,按⽔平⽅向排列,排满⼀⾏换下⼀⾏继续排列。
2⽹格布局,把Container按指定⾏列数分隔出若⼲⽹格,每⼀个⽹格按顺序放置⼀个控件。
3⽹格袋布局,按⽹格划分Container,每个组件可占⽤⼀个或多个⽹格,可将组件垂直、⽔平或沿它们的基线对齐。
4箱式布局,将Container中的多个组件按 ⽔平 或 垂直 的⽅式排列。
5分组布局,将组件按层次分组(串⾏ 或 并⾏),分别确定 组件组 在 ⽔平 和 垂直 ⽅向上的位置。
6卡⽚布局,将Container中的每个组件看作⼀张卡⽚,⼀次只能显⽰⼀张卡⽚,默认显⽰第⼀张卡⽚。
7边界布局,把Container按⽅位分为 5 个区域(东、西、南、北、中),每个区域放置⼀个组件。
8弹性布局,通过定义组件四条边的坐标位置来实现布局。
9绝对布局,通过设置组件在Container中的坐标位置来放置组件。
4. 代码实例: ⼀个简单的窗⼝程序
package ;
import*;
public class Main {
public static void main(String[] args){
// 1. 创建⼀个顶层容器(窗⼝)
JFrame jf =new JFrame("测试窗⼝");// 创建窗⼝
jf.setSize(250,250);// 设置窗⼝⼤⼩
jf.setLocationRelativeTo(null);// 把窗⼝位置设置到屏幕中⼼
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);// 当点击窗⼝的关闭按钮时退出程序(没有这⼀句,程序不会退出)
// 2. 创建中间容器(⾯板容器)
JPanel panel =new JPanel();// 创建⾯板容器,使⽤默认的布局管理器
// 3. 创建⼀个基本组件(按钮),并添加到⾯板容器中
JButton btn =new JButton("测试按钮");
panel.add(btn);
// 4. 把⾯板容器作为窗⼝的内容⾯板设置到窗⼝
jf.setContentPane(panel);
// 5. 显⽰窗⼝,前⾯创建的信息都在内存中,通过 jf.setVisible(true) 把内存中的窗⼝显⽰在屏幕上。
jf.setVisible(true);
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。