SWT概述
2016-04-29 22:10
246 查看
SWT技术是一套基于Java的第三方图形工具库。它的设计思想是提供一套通用的API,使得开发出的图形程序不仅可以不加修改地在平台间移植,而且外观上和速度上与使用C/C++等语言在操作系统平台上开发出来的本地图形程序毫无差别,还可以使用鼠标拖放操作、系统托盘等高级的系统服务。
SWT与AWT/Swing源自两种完全不同的设计思想,二者各有所长。
Swing是Sun公司设计的一套图形工具箱,它的目标是打造一套跨平台的图形界面开发工具。从最早的AWT到后来的Swing,Sun一直坚持着“界面跨平台”的理念,图形界面无论在那一个平台下面运行,风格都要保持不变。用户可以通过在Swing提供的显示风格中选择喜欢类型而设置程序的风格。
这种设计的初衷是从用户的角度出发,但随之而来的问题就是Swing不能直接用操作系统提供的图形显示功能而只能“模拟”它们,即Swing必须自己“画“出和目标操作平台的风格相似的界面。
Swing采用了模型和显示分离的方法。控件本身并不包含任何和绘图相关的代码,而是将绘图代码分离到另外的类–UI类中。UI类的结构和Swing控件的类型结构是一一对应的。
下面我们来编写第一个SWT示例,SWT相关包的下载地址为:http://www.eclipse.org/swt/
运行结果:
SWT与AWT/Swing源自两种完全不同的设计思想,二者各有所长。
Swing是Sun公司设计的一套图形工具箱,它的目标是打造一套跨平台的图形界面开发工具。从最早的AWT到后来的Swing,Sun一直坚持着“界面跨平台”的理念,图形界面无论在那一个平台下面运行,风格都要保持不变。用户可以通过在Swing提供的显示风格中选择喜欢类型而设置程序的风格。
这种设计的初衷是从用户的角度出发,但随之而来的问题就是Swing不能直接用操作系统提供的图形显示功能而只能“模拟”它们,即Swing必须自己“画“出和目标操作平台的风格相似的界面。
Swing采用了模型和显示分离的方法。控件本身并不包含任何和绘图相关的代码,而是将绘图代码分离到另外的类–UI类中。UI类的结构和Swing控件的类型结构是一一对应的。
下面我们来编写第一个SWT示例,SWT相关包的下载地址为:http://www.eclipse.org/swt/
package com.gujin.swt; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; public class HelloSWT { public static void main(String[] args) { Display display = Display.getDefault(); Shell shell = new Shell(display); Label hello = new Label(shell, SWT.NONE); hello.setBounds(10, 10, 100, 30); hello.setText("Hello SWT"); shell.open(); shell.pack(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } }
运行结果:
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树