swing_swingbench - CSDN
swing 订阅
Swing是一个用于开发Java应用程序用户界面的开发工具包。以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event。 展开全文
Swing是一个用于开发Java应用程序用户界面的开发工具包。以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event。
信息
基    础
抽象窗口工具包(AWT)
示    例
avax.swing,javax.swing.event
特    点
丰富、灵活的功能和模块化组件
中文名
Swing
功    能
开发Java应用程序用户界面
性    质
开发工具包
Swing步骤
(1)导入Swing包 Swing 可定制图形界面(6张) (2)选择界面风格(3)设置顶层容器(4)设置按钮和标签(5)将组件放到容器上(6)为组件增加边框(7)处理事件(8)辅助技术支持下面语句导入Swing包import javax.swing.*;大部分Swing程序用到了AWT的基础底层结构和事件模型,因此需要导入两个包:import java.awt.*;import java.awt.event.*;如果图形界面中包括了事件处理,那么还需要导入事件处理包:import javax.swing.event.*;Swing允许选择程序的图形界面风格常用的有java风格,windows风格等下面的代码用于选择图形界面风格,这里选择的是跨平台的Java界面风格。try { UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName( )); }catch (Exception e) { }图形界面至少要有一个顶级Swing容器顶级Swing容器为其它Swing组件在屏幕上的绘制和处理事件提供支持常用的顶级容器:JFrame(框架):表示主程序窗口JDialog(对话框):每个JDialog对象表示一个对话框,对话框属于二级窗口JApplet(小程序):在浏览器内显示一个小程序界面一个框架包括边界、菜单栏、工具栏、状态栏,以及中间占主要部分的窗格窗格也可以看作是一种面板,但它是框架的一个组成部分组件不会直接放到框架上,而是放在若干个面板上,这些面板再放到窗格上用框架对象的getContentPane()函数来获得窗格,再调用窗格的add()函数放置面板public static void main(String[ ]args){JFrame frame=new JFrame("SwingApplication");JPanel panel1=new JPanel();frame.getContentPane().add(panel1,BorderLayout.CENTER);......//frame.pack();frame.setVisible(true);}
收起全文
精华内容
参与话题
  • Java学习指南(Swing入门篇)

    千人学习 2019-08-19 09:54:36
    Swing系列教程分为两篇:(1) Swing入门篇 (2) Swing高级篇。 通过本篇的训练,学员可以较容易的掌握Java的主要语法,对常用的API都有很好的掌握。 本篇内容至少包含: - 基本控件的使用 - 布局管理器的使用 ...
  • Java Swing 图形界面开发(目录)

    万次阅读 多人点赞 2020-08-13 17:40:37
    Java Swing 图形界面(GUI)开发基础教程(目录)

    本文链接: https://blog.csdn.net/xietansheng/article/details/72814492

    0. JavaSwing 简介

    1. JavaSwing 布局管理器

    2. JavaSwing 基本组件

    3. JavaSwing 面板组件

    4. JavaSwing 其他组件

    5. JavaSwing 相关特性

    扩展:Java AWT/Swing 其他相关


    展开全文
  • Java_Swing(一)——Swing介绍

    万次阅读 2019-06-03 23:49:27
    Swing组件的出现是为了解决AWT组件的移植性问题,同时提供更多的企业级应用程序所需要的界面功能,Swing组件中的类主要包含在javax.swing包中,JDK1.2以后的版本都包含Swing类库。 与AWT组件不同,javax.swing包中...

    Swing 是一个为Java设计的GUI工具包,是新一代的图形界面工具。Swing组件的出现是为了解决AWT组件的移植性问题,同时提供更多的企业级应用程序所需要的界面功能,Swing组件中的类主要包含在javax.swing包中,JDK1.2以后的版本都包含Swing类库。

    与AWT组件不同,javax.swing包中的大部分组件是没有同位体的组件,所以简称为轻组件。(AWT组件中的类创建组件时,都有一个相应的本地组件在为它工作,称为它的同位体。AWT组件的设计原理是把显示组件和处理组件事件的工作交给同位体,因此AWT组件通常被称作重量组件。)轻组件在设计上把显示组件和处理组件事件的工作交给相应的UI代理来完成,UI代理是用java语言编写的类,系统运行时,这些类被加载到Java的运行环境中,使得组件的外观不依赖于平台,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色。因此与重量组件相比,具有更高的性能。(注意:如果Java编程环境或Java运行环境低于JDK1.2版本,就不能使用Swing组件或运行含有Swing组件的程序。)

    Swing组件的层次关系图:

    从图中可以明显看出,Swing组件都是AWT组件Container类的直接子类和间接子类,Java把由Container的子类或间接子类创建的对象称为一个容器。容器是用来组织其他界面成分和元素的单元,一个应用程序的图形用户界面首先对应于一个复杂的容器,这个容器将再进一步包含它的界面成分和元素,以此类推就构成了一个复杂的图形用户界面系统。图形用户界面中的界面成分或元素又称为组件(Component),组件是一个按照一定规范编写的特殊的类,它有自己特定的功能并可作为一个单独的部分添加到程序中。容器本身也是一个组件,因此可以把一个容器添加到另一个容器中实现容器的嵌套,Java中的Swing组件既可以作为组件也可以作为容器来使用。

    javax.swing包中包含近100个类和25个接口,几乎所有的Swing组件都在javax.swing包中,只有JTableHeader和JTextComponent是例外,分别在swing.table和swing.text中。

    展开全文
  • Java学习指南(Swing高级篇)

    千人学习 2019-08-19 09:55:10
    Swing系列教程分为两篇:(1) Swing入门篇 (2) Swing高级篇。 本篇内容至少包含: - 高级绘制技术,包含线型、渐变色、文本的精确绘制 - 不规则形状及图表的绘制 - 工作线程与界面线程的原理 - 短任务、长任务...
  • Swing的介绍

    千次阅读 2017-11-24 16:21:28
    Swing是一个为java设计的GUI工具包.Swing是JAVA基础类的一部分.Swing包括了图形用户界面(GUI)器件如 : 文本框,按钮,分隔窗格和表.Swing提供许多比AWT更好的屏幕显示元素.它们用纯Java写成,所以同Java本身一样可以跨...

    Swing是一个为java设计的GUI工具包.Swing是JAVA基础类的一部分.Swing包括了图形用户界面(GUI)器件如 : 文本框,按钮,分隔窗格和表.Swing提供许多比AWT更好的屏幕显示元素.它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT.它们是JFC一部分.它们支持可更换的面板和主题,然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们.这意味着你可以在任意平台上使用JAVA支持的任意面板.轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为.Swing开发图形界面比AWT更加优秀,因为Swing是一种轻量级组件,它采用100%的java实现,不再依赖于本地平台的,图形界面.,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色.由于AWT需要调用底层平台的GUI实现,所以AWT只能使用各种平台上GUI组件的交集,这大大限制了AWT所支持的GUI组件.对Swing而言,几乎所有组件都采用纯Java实现,所以无须考虑底层平台是否支持该组件,因此Swing可以提供如JTabbedPane,JDesktopPane,JInternalFarme等特殊的容器,也可以提供像JTree,JTable,JSpinner,JSlider等特殊的GUI组件.

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

    Swing开发图形界面有如下优势 :

    Swing组件不再依赖于本地平台的GUI,无须采用各种平台的GUI交集,因此Swing提供了大量图形界面组件,远远超出了AWT所提供的图形界面组件集.

    Swing组件不再依赖于本地平台GUI,因此不会产生与平台相关的bug.

    Swing组件在各种平台上运行时可以保证具有相同的图形界面外观.

    Swing提供的这些优势,让Java图形界面程序真正实现了"Write Once,Run Anywhere" 的目标.除此之外,Swing还有如下特征.

    Swing组件采用MVC(MODEL-View-Controller,既模型-视图-控制器)设计模式,其中模型(Model)用于维护组件的各种状态,视图(View)是组件的可视化表现,控制器(Controller)用于控制对于各种事件,组件做出怎样的响应.当模型发送改变时,它会通知所有依赖它的视图,视图会根据模型数据更新自己.Swing使用UI代理来包装视图和控制器,还有另一个模型对象来维护该组件的状态.例如 , 按钮JButton有一个维护其状态信息的模型ButtonModel对象,Swing组件的模型是自动设置的,因此一般都使用JButton,而无须关系ButtonModel对象.因此,

    Swing组件的模型是自动设置的,因此一般都使用JButton,而无须关系ButtonModel对象.因此,Swing的MVC实现也被称为Model-Delegate(模型--代理)


    展开全文
  • 0、Swing简介

    2020-10-11 21:13:19
    Swing 是 Java 为图形界面应用开发提供的一组工具包,是 Java 基础类的一部分。 Swing 包含了构建图形界面(GUI)的各种组件,如: 窗口、标签、按钮、文本框等。 Swing 提供了许多比 AWT 更好的屏幕显示元素,使用...

    Swing 是 Java 为图形界面应用开发提供的一组工具包,是 Java 基础类的一部分。

    Swing 包含了构建图形界面(GUI)的各种组件,如: 窗口、标签、按钮、文本框等。

    Swing 提供了许多比 AWT 更好的屏幕显示元素,使用纯 Java 实现,能够更好的兼容跨平台运行。

    为了和 AWT 组件区分,Swing 组件在javax.swing.*包下,类名均以 J 开头,例如: JFrame、JLabel、JButton等。

    Swing组件

    一个 Java 的图形界面,由各种不同类型的“元素”组成,例如: 窗口、菜单栏、对话框、标签、按钮、文本框等等,这些“元素”统一被称为 组件(Component)

    组件按照不同的功能,可分为 顶层容器、中间容器、基本组件。一个简单窗口的组成,如下层级结构所示:

     

    组件类型的继承关系:

    • 顶层容器 属于窗口类组件,继承自java.awt.Window;
    • 中间容器 和 基本组件 继承自javax.swing.JComponent。

    2.1 顶层容器

    顶层容器属于窗口类组件,可以独立显示,一个图形界面至少需要一个窗口,例如:

     

    2.2 中间容器

    中间容器充当基本组件的载体,不可独立显示。中间容器可以添加若干基本组件(也可以嵌套添加中间容器),对容器内的组件进行管理,类似于给各种复杂的组件进行分组管理。最顶层的一个中间容器必须依托在顶层容器(窗口)内。

     

    常用的中间容器(面板):

     

    特殊的中间容器:

     

    2.3 基本组件

    基本组件是直接实现人机交互的组件。

     

    常用的简单的基本组件:

     

    选取器组件:

     

    其他较为复杂的基本组件:

     

    布局管理器

    把 Swing 的各种组件(JComponent)添加到面板容器中(JPanel),需要给面板容器指定布局管理器(LayoutManager),明确容器(Container)内的各个组件之间的排列布局方式。

     

    常用的布局管理器:

     

     入门案例

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    public class TestJFrame {
    
    	public static void main(String[] args) {
    
    		//创建一个顶层容器
    		JFrame jf = new JFrame();
    		//设置大小
    		jf.setSize(400, 300);
    		//设置位置 居中
    		jf.setLocationRelativeTo(null);//基于当前窗口居中,null默认表示当前系统
    		
    		//手动关闭窗口时未结束程序
    		//需要设置关闭时退出JVM
    		jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		
    		//设置标题
    		jf.setTitle("第一个Swing窗口");
    		
    		//设置窗口不能最大化且不能缩放窗口
    		jf.setResizable(false);
    		
    		//创建一个中间容器
    		JPanel panel = new JPanel();
    		//创建一个按钮组件
    		JButton btn = new JButton("我是第一个个按钮");
    		JButton btn2 = new JButton("我是第二个个按钮");
    		//将按钮添加到panel中
    		panel.add(btn);
    		panel.add(btn2);
    		//将中间容器panel添加到窗口中
    		jf.setContentPane(panel);
    		
    		//显示窗口
    		jf.setVisible(true);
    	}
    
    }

    展开全文
  • Swing实现登录页面

    万次阅读 2018-06-26 22:55:52
    Swing实现登录页面,输入用户名和密码正确之后,点击确定按钮可以显示登录成功,输入错误会显示错误,点击重置按钮会将将用户名和... import java.awt.*; import java.awt.event.*; import javax.swing.*; public ...
  • java的Swing框架简介

    千次阅读 2019-01-30 16:10:46
    Swing编程基础 Swing开发的图形界面AWT跟家轻量级,使用100%的java开发不再依赖本地图形界面可以在所有平台保持相同的运行效果。 优点: 1)Swing组建不再依赖本地平台GUI无需采用各种平台的GUI交集,因此Swing提供...
  • Swing

    2020-04-06 22:05:50
    Swing包中提供了更加丰富、便捷、强大的GUI组件,而且这些组件都是java语言编写而成的,因此,Swing组件不依赖于本地平台,可以真正做到跨平台运行,Swing有JWindow、JFrame、JDialog三个组件JWindow很少使用 ...
  • Java-Swing编程介绍

    万次阅读 多人点赞 2018-04-22 17:15:50
    总体介绍 组件(控件)和容器 组件(控件) 容器 布局管理 第一个窗口程序 布局管理BorderLayout和FlowLayout介绍 学习layout的小技巧 控件JButton和JTextField介绍 JButton介绍 不新建类来实现...Sw...
  • Java Swing 图形界面开发简介

    万次阅读 多人点赞 2019-01-14 15:52:58
    Java Swing GUI 图形界面窗口开发基础教程,本教程将系统性地详细介绍 Swing 开发中常用的一些组件、布局管理器等相关知识技术,并且每章节都将通过代码实例展示实际应用。Swing 是 Java 为图形界面应用开发提供的...
  • Java订餐系统(JAVA SWING

    万次阅读 多人点赞 2018-08-27 00:05:28
    一、 开发技术 JDK:JDK1.8,JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。...
  • Java Swing日期,时间选择控件

    万次阅读 2015-01-06 16:29:35
    这是一个使用JAVA SWING 封装的 日期,日期与时间选择的控件(JDialog). 该工具于2010年已经上传到CSDN资源, 下载地址为: http://download.csdn.net/detail/monkeyking1987/2534062 现在, 把该小控件的源码也...
  • Swing动态添加控件,界面刷新重绘

    万次阅读 2015-10-29 17:34:27
    add添加控件之后要调用  panel.validate();   panel.repaint();  或  panel.revalidate(); 刷新重绘控件
  • 如何用idea开发swing

    2015-08-17 09:56:07
    idea中有图形化的编辑器吗? idea中有图形化的编辑器吗? idea中有图形化的编辑器吗?
  • Java中swing使用ImageIcon类添加图片

    万次阅读 2017-08-21 19:33:22
    代码如下 package com.liuyanzhao; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.WindowConstants; p
  • Java Swing 之进度条的使用

    万次阅读 2014-05-02 21:57:26
    * java swing 之进度条的使用 * @author gao */ package com.gao; import java.awt.FlowLayout; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JProgressBar; import javax.swing...
  • Java swing 密码框的使用

    万次阅读 2014-05-02 14:02:55
    /** * Java swing 密码框的使用 * @author gao */ ... import java.awt.BorderLayout; import javax.swing.JFrame;...import javax.swing.JLabel;...import javax.swing.JPanel;...import javax.swing.JPasswo
  • Eclipse搭建Java Swing可视化开发环境

    万次阅读 2016-07-09 10:30:59
    从网上没搜到关于Java Swing可视化开发环境搭建的资料,但有一个视频教程值得推荐,Swing基本组件。 1、Eclipse下载  网页浏览器输入www.eclipse.org,Eclipse已更新到Eclipse Neon(4.6)版本,官网变化也挺大,下载...
  • java Swing 之下拉列表控件

    万次阅读 2014-05-02 14:51:58
    * Java Swing 之下拉列表控件 * @author gao */ package com.gao; import java.awt.FlowLayout; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing....
1 2 3 4 5 ... 20
收藏数 135,783
精华内容 54,313
关键字:

swing