SWING
第一个图形界面应用程序。
图形用户界面简称GUI(Graphical User Interface),通过GUI用户可以更好地与计算机进行交互。
Swing简介
Swing工具包提供了一系列丰富的GUI 组件:表控件,列表控件,树控件,按钮,标签等,用来构建图形界面的应用程序,大大增加了程序的可交互性。
swing是一个用于开发java应用程序界面的开发工具包。它以抽象窗口工具包(AWT)为基础,使跨平台应用程序可以使用任何可插拨的外观风格。开发人员只用很少的代码就可以利用swing丰
富,灵活的功能和模块化组件来创建优秀的用户界面,其中包括很多与界面相关的类和接口,是JFC的重要组成部分。JFC是java基础类的简称,它包括一组用于构建图形用户界面(GUI)并添
加丰富图形功能,以及交互性给应用程序的特征。
swing API是很强大的。Swing API一共有18个public类型包。
javax.accessibility
javax.swing
javax.swing.border
javax.swing.colorchooser
javax.swing.event
javax.swing.filechooser
javax.swing.plaf
javax.swing.plaf.basic
javax.swing.plaf.metal
javax.swing.plaf.multi
javax.swing.plaf.synth
javax.swing.table
javax.swing.text
javax.swing.text.html
javax.swing.text.html.parser
javax.swing.text.trf
javax.swing.text.tree
javax.swing.text.undo
swing特点
swing特点如下:包含丰富的组件,程序外观支持,可数据传递,易访问性API,部署支持灵活。
1:丰富的组件
从基本的组件(如按钮和复选框)到丰富复杂的组件(如表和文本)。及时看上去很简单的组件(如文件字段),也能提供复杂的功能(如格式化的文本输入和密码字段行为)。swing还包含
适合大多数需求的文件浏览器和对话框。如果对swing提供的组件不能完全满足要求,则可以利用基本的swing组件功能自定义的组件。
2:程序外观支持(look and feel)
任何使用swing组件的程序都可以选择外观,在swing中,有一个synth包,允许用户创建自己的外观。
java程序可以指定使用其要运行的平台的程序外观,或者指定总是使用java的程序外观。如果不指定,则由UI管理器负责选择适合的程序外观。
3:可传递数据
在实际使用中,几乎所有程序都可以通过剪切,复制 ,粘贴或拖放来传递数据。而swing内置了对数据的支持,可以在一个应用程序的组件之间,java应用程序之间以及java程序和本地程序
之间很好的进行数据传递工作。。
4:易访问性API
残疾人在操作应用程序的时候,需要专门的辅助软件作为中介手段。这样的辅助软件需要获得正在运行的应用程序的大量信息,以便可以替代的媒介形式来表示,如使用屏幕阅读器合成语音
读出屏幕内容,或者通过盲文显示表达内容,使用屏幕放大镜跟踪提示符和键盘焦点;屏幕上显示动态的键盘,用来控制菜单选项、工具栏和对话框控件;语音控制系统使用用户可以通过声
音控制操作。而java的可访问性API使这些辅助软件能够获得所需的信息,并且 通过程序操作构成图形用户界面元素。
5:部署支持灵活
使用java编写的程序,既可以将其创建为Applet小应用程序并使用java插件运行在浏览器窗口中(java插件支持各种类型的浏览器,如IE,Firefox,Safari)也可以使用Java Web Start创建
一个能在浏览器中启动的应用程序。
由swing提供的组件几乎都是轻量级组件。因为轻量级组件是绘制在包含它的容器中的,而不是绘制在自己的窗口中的,所以轻量级组件最终必须包含在一个重量级容量中。
SWING的更多相关文章
- 如何使用swing创建一个BeatBox
首先,我们需要回顾一些内容(2017-01-04 14:32:14): 1.Swing组件 Swing的组件(component,或者称之为元件),是较widget更为正确的术语,它们就是会放在GUI ...
- Java Swing interview
http://www.careerride.com/Swing-AWT-Interview-Questions.aspx Swing interview questions and answers ...
- Swing布局管理器介绍
创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://zhangjunhd.blog.51cto.com/113473/128174 当选 ...
- swing with transformjs
Antecedent Facebook made a HTML5 game long time ago. The opening animation is a piece of software th ...
- java swing 双人五子棋源代码
import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Toolkit; impo ...
- 用swing也可以做出好看的界面
用Swing做出的例子:JavaFX做出的界面:后来又做出了自己编写的一套基于Synth的L&F,其与直接在代码中重绘某个组件不同,最大优点是具有可插拔性,即在不改变原有程序代码的情况下,用户 ...
- Java界面设计 Swing(1)
Java界面设计的用途 开发者可以通过Java SE开发丰富并且强大的具有图形界面的桌面应用程序.也可以设计一些提高效率的工具软件,帮助自己处理机械性工作. Java 的图形界面工具包,可以用于工具类 ...
- java基础 swing编程实战
1. 实现金山词霸,点击左右收缩 效果图: exmaple code : /* * 词霸 * */ package demo7; import java.awt.*; import java.awt. ...
- Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解
Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解 在swing中,基于业务的考量,会有对话框来限制用户的行为及对用户的动作进行提示. Swing中 ...
- Swing学习笔记1-----Swing组件类的层次
1. 从结构上划分 Swing 组件类分为两种,一种是JComponent类,一种是Windows类.其中windows类包含的是一些可以独立显示的组件,而JComponent类包含的是不可以独立显 ...
随机推荐
- 随机(Random)
随机(Random)随机是智能的基础,人工智能的很多技术都需要用到随机,因此有必要把这个提到前面谈谈一考虑基于C/C++,般我们都是使用的rand ()等函数实现随机,当然我们也有吊炸天的boost库 ...
- C#winfrom中splitContainer的用法
常用属性 (1).splitContainer不能被鼠标直接点击选中,可通过右击->选择splitContainer选中. (2).属性IsSplitterFixed用于设置拆分器能否移动. ( ...
- 页面静态化2 --- 使用PHP缓存机制来完成页面静态化(上)(ob_flush和flush函数区别用法)
我们可以使用PHP自带的缓存机制来完成页面静态化,但在这里,需要说明一点,仅靠PHP缓存机制并不能完美的解决页面静态化,往往需要和其他页面静态技术(通常是伪静态技术)结合使用 例子: 当访问一个页面时 ...
- jsonObject jsonarray
1.JAR包简介 要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包: commons-lang.jar commons-beanutils.jar commons ...
- JBPM TaskInstance 对象创建过程
对象获得过程如下: 获得对象工厂--->工厂创建代理对象 TaskMgmtInstance tmi = executionContext.getTaskMgmtInstance(); TaskI ...
- 【运维工具】logrotate 日志管理神器
服务器经常会产生各种各样的日志文件,我们需要定期清理 日志的分类 系统日志 应用日志 系统日志 例如系统的history 历史信息 crontab的运行日志 一般系统日志系统都帮我们运维好了,不 ...
- getComputedStyle()与currentStyle
getComputedStyle()与currentStyle计算元素样式 发表于 2011-10-27 由 admin “DOM2级样式”增强了document.defaultView,提供了get ...
- 在Vista或更高版本Windows系统中, 获取超大图标的办法
这几天写个小东西, 需要获取系统正在运行的程序图标, 一般来说32*32就足够了, 不过既然Win7能够支持超大图标(256*256), 咱们也需要与时俱进, 说不定什么时候遇到个变态客户就有这要求了 ...
- 让Qt的无边框窗口支持拖拽、Aero Snap、窗口阴影等特性
环境:Desktop Qt 5.4.1 MSVC2013 32bit 需要的库:dwmapi.lib .user32.lib 需要头文件:<dwmapi.h> .<windowsx. ...
- JS 获取和监听屏幕方向变化(portrait / landscape)
移动设备的屏幕有两个方向: landscape(横屏)和portrait(竖屏),在某些情况下需要获取设备的屏幕方向和监听屏幕方向的变化,因此可以使用Javascript提供的 MediaQueryL ...