SWing组件说明及使用

SWing简介

Swing是一个用于开发Java应用程序用户界面的开发工具包。其采用纯 Java 实现,不再依赖于本地平台的图形界面,可以在所有平台上保持相同的运行效果,对跨平台支持比较出色。除此之外,Swing 提供了比 AWT 更多的图形界面组件,因此可以开发出美观的图形界面程序。

层级结构

  • 顶级容器
    • 中间容器
      • 基本组件
      • 其他组件

类层次结构

Swing的类层次结构图

顶级容器

窗口类组件,可以独立显示,其他组件可以添加其中,一个图形界面显示至少需要一个窗口

组件描述
JFrame顶级容器,允许把其他组件添加到它里面,把它们组织起来
JApplet顶级容器,JApplet要镶嵌在网页里,依赖浏览器来执行
JWindow顶级容器,JWindow类是一个容器,可以显示,但不具有标题栏或窗口管理按钮(多用于制作欢迎界面)
JDialog顶级容器,一个弹框的窗体组件,多用于信息的提示,它是没有最大化和最小化的,只有一个关闭按钮

面板组件

也属于中间容器,可以添加基本组件,也可以嵌套中间容器,最终的中间容器(最顶级的中间容器(无嵌套))必须添加在顶级容器。

#组件描述
1JPanel轻量级容器,面板容器
2JScrollPane一个滚动面板,只能添加一个组件 (但是我们可以添加一个面板JPanel,然后再把很多组件添加到JPanel上)
3JSplitPane拆分窗格,就是被分为两部分的容器,左边为一个容器,右边为一个容器,可设置为 左右分布和上下分布,HORIZONTAL_SPLIT和VERTICAL_SPLIT。两边分别放置组件。
4JTabbedPane选项卡面板,可以通过单击标题或者图标在选项卡之间进行切换
5JLayeredPane层级面板,JLayeredPane为容器添加了深度,允许组件在需要时互相重叠
6JDesktopPane用于创建多文档界面或虚拟桌面的容器
7JInternalFrame内部窗口,其支持在 JFrame 窗口内部显示一个完整的子窗口,并提供了许多本机窗体功能的轻量级对象, 通常将 JInternalFrame 添加到 JDesktopPane 中,由其来维护和显示 JInternalFrame

菜单相关组件

创建菜单栏时一些常用、相关的组件。

组件描述
JMenuBar菜单栏
JToolBar工具栏
JMenu菜单
JMenultem菜单项
JPpupMenu弹出式菜单
JCheckBoxMenultem可以被选定或取消选定的菜单项
JRadioButtonMenultem一个单选按钮菜单项的实现。

基本组件及其他组件

一些实现可实现人机交互的组件,

#组件描述
1JLabel标签组件
2JTextField单行文本框
3JTextArea多行文本框
4JPasswordField密码框
5JButton按钮组件
6JRadioButton单选按钮
7JToggleButton开关按钮
8JCheckBox复选框
9JComboBox下拉列表组件
10JFormattedTextField文本控件类,在创建控件的构造方法中可以指定格式器类型,使得这个文本框只接受该类型的数据
11JTextPaneJTextPane是JEditorPane类的子类。JTextPane用于带有嵌入式图像和组件的样式化文档。可以编辑和显示html,可以用图形表示的属性标记的文本组件
12JEditorPane文本编辑器窗口
13JSpinner允许用户使用输入字段从有序序列中选择数字或对象值(类似下拉列表组件)
14JList列表控件,展示一组项目,供用户选择 ,支持三种选取模式:单选取、单间隔选取和多间隔选取
15JTable表格控件
16JTree树组件,将分层数据显示为树状轮廓的组件
17JProgressBar进度条, 以可视化形式显示某些任务进度的组件
18JScrollBar滚动条
19JSeparator实现分隔线,通常使用在菜单项之间的分隔线
20JSlider滑块,以图形方式在有界区间内通过移动滑块来选择值的组件 21
22JFileChooser文件选择器
23JToolTip用于显示组件的“提示”。

布局管理器

定义组件或者面板在添加到上一级面板时的排列布局方式。

#LayoutsDescription
1Absolute layout绝对布局
2FlowLayout流式布局,线性布局
3BorderLayout边界布局(东南西北中)
4GridLayout网格布局
5GridBagLayout网格包布局,组件可拉伸,不需要组件的尺寸一致,允许组件扩展到多行多列
6CardLayout卡片布局,帮助用户实现多个成员共享同一个显不空间,并且一次只显示一个容器组件的内容
7BoxLayout盒布局
8SpringLayout弹性布局,通过定义组件边缘之间的距离来对组件在容器之中组件的布局进行管理而工作的
9FormLayout表单布局
10GroupLayout分组布局,串行组 (sequential group):按顺序沿指定方向(水平/垂直)逐个放置元素。并行组 (parallel group):沿指定方向(水平/垂直)并行排列元素,能够以四种不同方式对齐其子元素

事件监听

#EventEventListener
1MouseEvent (鼠标事件)MouseListener(鼠标监听器)
2KeyEvent(键盘事件)KeyListener(键盘监听器)
3ActionEvent(动作事件)ActionListener(动作监听器)
  • 7
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
【资源说明】 基于JavaSwing组件实现的拼图小游戏源码+项目说明.zip基于JavaSwing组件实现的拼图小游戏源码+项目说明.zip基于JavaSwing组件实现的拼图小游戏源码+项目说明.zip 基于JavaSwing组件的拼图游戏 主要运用GUI设计,使用awt的jar包来创建窗体,面板,标签、实现图片的交换 及其它们的窗口布局等,创建线程来控制进度条的进度及其显示,使用按钮监听 器来实现窗口打开和关闭、游戏的开始、暂停和关闭。 基于JavaSwing组件的拼图游戏 主要运用GUI设计,使用awt的jar包来创建窗体,面板,标签、实现图片的交换 及其它们的窗口布局等,创建线程来控制进度条的进度及其显示,使用按钮监听 器来实现窗口打开和关闭、游戏的开始、暂停和关闭。 基于JavaSwing组件的拼图游戏 主要运用GUI设计,使用awt的jar包来创建窗体,面板,标签、实现图片的交换 及其它们的窗口布局等,创建线程来控制进度条的进度及其显示,使用按钮监听 器来实现窗口打开和关闭、游戏的开始、暂停和关闭。 基于JavaSwing组件的拼图游戏 主要运用GUI设计,使用awt的jar包来创建窗体,面板,标签、实现图片的交换 及其它们的窗口布局等,创建线程来控制进度条的进度及其显示,使用按钮监听 器来实现窗口打开和关闭、游戏的开始、暂停和关闭。 基于JavaSwing组件的拼图游戏 主要运用GUI设计,使用awt的jar包来创建窗体,面板,标签、实现图片的交换 及其它们的窗口布局等,创建线程来控制进度条的进度及其显示,使用按钮监听 器来实现窗口打开和关闭、游戏的开始、暂停和关闭。 【备注】 1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载使用体验! 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stu-hu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值