iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >什么是java swing?
  • 974
分享到

什么是java swing?

javaswing 2018-07-31 19:07:51 974人浏览 猪猪侠
摘要

Swing是一个用于开发Java应用程序用户界面的开发工具包(GUI工具包),是Java基础类的一部分;它包括了图形用户界面(GUI)器件,如:文本框,按钮,分隔窗格和表。Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,

Swing是一个用于开发Java应用程序用户界面的开发工具包(GUI工具包),是Java基础类的一部分;它包括了图形用户界面(GUI)器件,如:文本框,按钮,分隔窗格和表。

Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

Swing 类库结构

Swing 组件都采用 mvc(Model-View-Controller,即模型-视图-控制器)的设计,实现 GUI 组件的显示逻辑和数据逻辑的分离,从而允许程序员自定义 Render 来改变 GUI 组件的显示外观,以提供更多的灵活性。

Swing 围绕 JComponent 组件构建,JComponent 则由 AWT 的容器类扩展而来。

Swing类库组织结构图:

1.gif

可以看出,Swing 组件除了 AbstmctButton 类之外都以 J 开头。Swing 容器组件直接继承 AWT 类库中的容器组件类,其他大部分组件都是继承 JComponet 组件。组件可以划分为容器组件和非容器组件,容器组件包括 JFmme 和 JDialog。其中 JComponent 定义了非容器类的轻量级组件(JBntton、JPanel、JMenu 等)。

Swing 包

Swing 类库由许多包组成,通过这些包中的类相互协作来完成 GUI 设计。其中,javax.swing 包是 Swing 提供的最大包,它包含将近 100 个类和 25 个接口。几乎所有 Swing 组件都在该包中。表 1 列出了常用的 Swing 包。

Swing常用包
包名称描述
javax.swing提供一组“轻量级”组件,尽量让这些组件在所有平台上的工作方式都相同
javax.swing.border提供围绕 Swing 组件绘制特殊边框的类和接口
javax.swing.event提供 Swing 组件触发的事件
javax.swing.filechooser提供 JFileChooser 组件使用的类和接口
javax.swing.table提供用于处理 javax.swing.JTable 的类和接口
javax.swing.text提供类 htmlEditorKit 和创建 HTML 文本编辑器的支持类
javax.swing.tree提供处理 javax.swingJTree 的类和接口

javax.swing.event 包中定义了事件和事件监听器类,javax.swing.event 包与 AWT 的 event 包类似。Java.awt.event 和 javax.swing.event 都包含事件类和监听器接口,它们分别响应由 AWT 组件和 Swing 组件触发的事件。

例如,当在树组件中需要节点扩展(或折叠)的通知时,则要实现 Swing 的 TreeExpansionListener 接口,并把一个 TreeExpansionEvent 实例传送给 TreeExpansionListener 接口中定义的方法,而 TreeExpansionListener 和 TreeExpansionEvent 都是在 swing.event 包中定义的。

虽然 Swing 的表格组件(JTable)在 javax.swing 包中,但它的支持类却在 javax.swing.table 包中。表格模型、图形绘制类和编辑器等也都在 javax.swing.table 包中。

与 JTable 类一样,Swing 中的树 JTree(用于按层次组织数据的结构组件)也在 javax.swing 包中,而它的支持类却在 javax.swing.tree 包中。javax.swing.tree 包提供树模型、树节点、树单元编辑类和树绘制类等支持类。

Swing 容器

创建图形用户界面程序的第一步是创建一个容器类以容纳其他组件,常见的窗口就是一种容器。容器本身也是一种组件,它的作用就是用来组织、管理和显示其他组件。

Swing 中容器可以分为两类:顶层容器和中间容器。

顶层容器是进行图形编程的基础,一切图形化的东西都必须包括在顶层容器中。顶层容器是任何图形界面程序都要涉及的主窗口,是显示并承载组件的容器组件。在 Swing 中有三种可以使用的顶层容器,分别是 JFrame、JDialog 和 JApplet。

● JFrame:用于框架窗口的类,此窗口带有边框、标题、关闭和最小化窗口的图标。带 GUI 的应用程序至少使用一个框架窗口。

● JDialog:用于对话框的类。

● JApplet:用于使用 Swing 组件的 Java Applet 类。

中间容器是容器组件的一种,也可以承载其他组件,但中间容器不能独立显示,必须依附于其他的顶层容器。常见的中间容器有 JPanel、jscrollPane、JTabbedPane 和 JToolBar。

● JPanel:表示一个普通面板,是最灵活、最常用的中间容器。

● JScrollPane:与 JPanel 类似,但它可在大的组件或可扩展组件周围提供滚动条。

● JTabbedPane:表示选项卡面板,可以包含多个组件,但一次只显示一个组件,用户可在组件之间方便地切换。

● JToolBar:表示工具栏,按行或列排列一组组件(通常是按钮)。

在 Java 程序中容器类都是继承自 Container 类。中间容器和顶层容器在,AWT 包和 Swing 包中继承 Container 类的继承关系,如图所示(容器类组织结构图):

2.gif

推荐学习:Java视频教程

--结束END--

本文标题: 什么是java swing?

本文链接: https://www.lsjlt.com/news/2198.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 什么是java swing
    Java Swing是一组用于开发图形用户界面(GUI)的Java类库。它提供了一套丰富的组件,如按钮、文本框、下拉框、菜单等,用于...
    99+
    2023-08-25
    java
  • Java swing是什么
    这篇文章主要介绍“Java swing是什么”,在日常操作中,相信很多人在Java swing是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java swing是什么”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-02
  • java swing用来做什么
    Java Swing 是一个用于构建图形用户界面(GUI)的Java库。它提供了丰富的组件和工具,使开发人员能够创建交互式和可视化的...
    99+
    2023-08-26
    java swing
  • Java Swing编程中的JTable表格是什么
    今天就跟大家聊聊有关Java Swing编程中的JTable表格是什么 ,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。表格是GUI编程中使用较多,但也是最麻烦的一个控件之一。表格是用...
    99+
    2023-06-17
  • Java Swing编程的特殊容器是什么
    今天就跟大家聊聊有关Java Swing编程的特殊容器是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Swing还提供我们许多特殊容器方便我们编程,JSplitPane(分割面板...
    99+
    2023-06-17
  • java swing控件扩展的方法是什么
    Java Swing控件的扩展方法有以下几种:1. 继承基本控件:可以通过继承JButton、JLabel、JTextField等基...
    99+
    2023-08-26
    JAVA swing
  • JAVA中swing实现托盘的方法是什么
    在JAVA中,可以使用以下步骤来实现托盘功能:1. 导入相关的类和包:```javaimport java.awt.*;import...
    99+
    2023-09-25
    JAVA swing
  • JAVA SWING
    文章目录 前言一、Java swing概述?二、Java swing 的组件三、Java swing 的布局管理器四、Java swing 的事件处理五、Java swing 的示例代码总结 ...
    99+
    2023-09-18
    java 开发语言
  • Swing有什么用
    这篇文章主要介绍Swing有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!swing是java GUI应用程序,也就是java做的桌面应用。运行swing程序要求用户电脑上有java环境,这一点不太现实也不方便...
    99+
    2023-06-02
  • java swing组件怎么用
    Java Swing组件是一种用于创建图形用户界面(GUI)的工具包。下面是一些常用的Swing组件的使用方法: JFrame:J...
    99+
    2023-10-27
    swing java
  • java怎么导入swing包
    要在Java中导入Swing包,可以按照以下步骤操作:1. 在你的Java代码中添加以下导入语句:```javaimport jav...
    99+
    2024-02-29
    swing java
  • java swing怎么改变控件值
    要改变Java Swing控件的值,可以使用以下方法:1. 使用相应控件的setter方法:每个Swing控件都有相应的setter...
    99+
    2023-09-25
    java swing
  • AjaxSwing 3.0中是否将Java Swing转化为Ajax
    AjaxSwing 3.0中是否将Java Swing转化为Ajax,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。AjaxSwing是一个专为Java Swing应用程序打造的...
    99+
    2023-06-17
  • Java Swing中间容器怎么使用
    本篇内容主要讲解“Java Swing中间容器怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java Swing中间容器怎么使用”吧!Java基础入门 Swing中间容器在Swing中不...
    99+
    2023-06-21
  • java swing有哪些优缺点
    Java Swing是Java平台上的一个GUI工具包,具有以下优点和缺点。优点:1. 跨平台性:Java Swing可以在不同的操...
    99+
    2023-08-25
    java swing
  • Java Swing基础使用教程
    Java Swing是Java语言中的一个GUI工具包,它提供了一系列的组件和容器,可以用于创建各种桌面应用程序。本教程将介绍Java Swing的基本概念、组件和容器,以及如何使用它们来创建一个简单...
    99+
    2023-09-02
    java
  • Java Swing程序设计实战
    目录一、按钮组件1.1 提交按钮组件1.2 复选框组件二、列表组件2.1 JComboBox类2.2 列表框组件三、文本组件3.1 文本框组件3.2 密码框3.3 文本域组件四、常用...
    99+
    2024-04-02
  • Java Swing实现扫雷源码
    本文实例为大家分享了Java Swing实现扫雷源码的具体代码,供大家参考,具体内容如下 先来看下效果 运行时只需要创建一个GameWindow的对象即可,可使用有参构造函数自...
    99+
    2024-04-02
  • Java Swing的层次结构怎么理解
    这篇文章主要介绍“Java Swing的层次结构怎么理解”,在日常操作中,相信很多人在Java Swing的层次结构怎么理解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java ...
    99+
    2023-06-21
  • java中怎么使用swing组件窗口
    要使用Swing组件创建窗口,你可以按照以下步骤进行操作:1. 导入Swing库中的相关类:```javaimport javax....
    99+
    2023-08-15
    java swing
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作