`

eclipse开发SWT应用

    博客分类:
  • java
 
阅读更多

 

官网:http://www.eclipse.org/swt/

开发说明:http://www.eclipse.org/swt/eclipse.php

 

1. 到官网上下载swt.zip文件,导入workspace

.zip导入workspace

2. 选择路径

选择路径

3. 在需要添加swt的工程中,properties的Java Build Path页包含org.eclipse.swt

build path

4. 依赖org.eclipse.swt工程在自己的工程中使用swt

 

 

 

SWT实例

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;


public class HelloSWT extends Shell{
	private static Text text;
	private static Button swtButton;
	private static Button swingButton;
	private static Button awtButton;
	private static Group group;
	private static Button button;
	private static Label benefitOfSwtLabel;
	private static List list;
	
	public static void main(String[] args){
		/*
		 * 创建display对象,一个SWT程序至少需要一个Display对象,创建线程称为UI线程
		 * 一个线程中不能同时有两个活动的Display存在
		 */
		Display display = Display.getDefault();
		/*
		 * 一个Shell实例代表一个窗口
		 */
		final Shell shell = new Shell(display);//创建窗口对象
		shell.setText("Hello SWT");
		shell.setSize(260,283);//设置窗口尺寸,以像素为单位
		shell.open();//打开窗口,将窗口显示在屏幕上
		
		text =  new Text(shell, SWT.BORDER);
		text.setText("SWT是Eclipse平台使用的图形工具箱");
		text.setBounds(10, 8, 230, 35);
		
		list = new List(shell, SWT.BORDER);
		list.setItems(new String[]{
				"使用操作系统本地控件",
				"提供一套平台无关的API",
				"GUI程序的运行速度快",
				"更多更多......"});
		list.setBounds(10, 68, 232, 82);
		
		benefitOfSwtLabel = new Label(shell, SWT.BORDER);
		benefitOfSwtLabel.setText("SWT的优点:");
		benefitOfSwtLabel.setBounds(10, 49, 90, 20);
		
		group = new Group(shell, SWT.NONE);
		group.setText("你是用过哪些图形工具箱?");
		group.setBounds(10, 159, 230, 47);
		
		awtButton = new Button(group, SWT.CHECK);
		awtButton.setText("AWT");
		awtButton.setBounds(10, 20, 54, 18);
		
		swingButton = new Button(group, SWT.CHECK);
		swingButton.setText("Swing");
		swingButton.setBounds(70, 22, 60, 15);
		
		swtButton = new Button(group, SWT.CHECK);
		swtButton.setText("SWT");
		swtButton.setBounds(136, 22, 62, 15);
		
		button = new Button(shell, SWT.NONE);
		button.addSelectionListener(new SelectionAdapter(){
			public void widgetSelected(final SelectionEvent e){
				MessageBox msgBox = new MessageBox(shell, SWT.ICON_INFORMATION);
				msgBox.setMessage("Hello SWT!");
				msgBox.open();
			}
		});
		button.setText("按一下按钮,向SWT说Hello");
		button.setBounds(10, 214, 227, 25);
		
		shell.layout();//窗口布局
		
		//事件循环,display的事件循环同时处理系统队列和自定义队列
		while(!shell.isDisposed()){//若shell资源未被释放,事件循环一直继续
			/*
			 * 首先从事件队列中将事件取出来,经过必要的翻译后(TranslateMessage),
			 * 若事件队列中读到事件,就将它发送到窗口处理(DispatchMessage);
			 * 若在线程交互的事件队列中有需要执行的事件,就去执行它。
			 * 无事件处理,则使线程休眠,有新事件需要处理时唤醒线程
			 */
			if(!display.readAndDispatch()){
				display.sleep();
			}
		}
		//释放占用的资源,所有它管理的shell都会被同时释放,(释放父资源时子资源同时被释放)
		display.dispose();
	}
}

 结果:

swt实例结果

 

 

 

 

 

 

分享到:
评论
1 楼 jiedushi 2013-01-10  
学习了 

相关推荐

    Eclipse SWT JFace核心应用_pdf_含标签_目录

    《Eclipse SWT/Jface核心应用》全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍了SWT产生的背景以及SWT的一些基本概念和基础知识。第2篇介绍了SWT基本控件的使用,以及事件处理、布局等SWT基本知识的...

    Eclipse SWT JFace核心应用相关应用及源码.rar

    SWT 是由 IBM 领 导的开源项目 Eclipse 的一个子项目,但 SWT 应用上也存在不足,SWT 库反映的是本地操作 系统的基本窗口小部件,在许多环境下,这种方法较低级。JFace 库作为 SWT 的增强库很好 地弥补了它的缺点,...

    Eclipse_Swt_Jface_核心应用的源码

    《Eclipse_Swt_Jface_核心应用》介绍Eclipse的核心,详细讲解了SWT,JFace,RCP,介绍了SWT,JFace的基本控件以及事件处理,布局,及SWT的高级应用,JFace的框架及RCP的框架及应用的开发.这里是这本书的光盘源码

    Eclipse SWT JFace核心应用 PDF.part1 of 3

    本书全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍...本书结构清晰,注重实用,深入浅出,非常适合Eclipse开发人员学习使用,尤其适合SWT/JFace开发人员、Eclipse插件开发人员和RCP应用程序开发人员。

    eclipse 开发桌面程序

    利用SWT技术,基于WindowBuilder Eclipse 插件开发 桌面应用小程序详细步骤

    Eclipse SWT JFace核心应用 PDF.part2 of 3

    本书全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍...本书结构清晰,注重实用,深入浅出,非常适合Eclipse开发人员学习使用,尤其适合SWT/JFace开发人员、Eclipse插件开发人员和RCP应用程序开发人员。

    Eclipse SWT JFace核心应用 PDF.part3 of 3

    本书全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍...本书结构清晰,注重实用,深入浅出,非常适合Eclipse开发人员学习使用,尤其适合SWT/JFace开发人员、Eclipse插件开发人员和RCP应用程序开发人员。

    Eclipse SWT_JFace核心应用 随书光盘

    Eclipse SWT_JFace核心应用 随书光盘

    Eclipse_Swt_Jfrace_核心应用part01-part05_of_19

    Eclipse_Swt_Jface_核心应用 本书全面介绍了SWT、JFace和RCP的相关...本书结构清晰,注重实用,深入浅出,非常适合Eclipse开发人员学习使用,尤其适合SWT/JFace开发人员、Eclipse插件开发人员和RCP应用程序开发人员

    Eclipse swt/jface核心应用源码(带视频)

    eclipse swt/jface核心应用源代码 带视频,找了好久,希望可以帮到大家,跟书匹配

    SWT开发工具Jigloo

    Jigloo是一个很好的SWT开发组件,配合Eclipse开发SWT应用界面.

    Eclipse_Swt_Jface_核心应用_part01_of_19

    本书全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍... 本书结构清晰,注重实用,深入浅出,非常适合Eclipse开发人员学习使用,尤其适合SWT/JFace开发人员、Eclipse插件开发人员和RCP应用程序开发人员。

    Eclipse下使用swt

    Eclipse开源项目的Visual Editor Project(VEP)使得功能强大的eclipse平台在java开发方面又增加了一个可视化java组件开发利器。...所有的开发,从应用程序界面到业务逻辑的开发,现在都可以在eclipse平台上完成。

    Eclipse SWTJFace核心应用光盘内容及其应用的jar包

    Eclipse SWT/Jface核心应用》全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍了SWT产生的背景以及SWT的一些基本概念和基础知识。第2篇介绍了SWT基本控件的使用,以及事件处理、布局等SWT基本知识的...

    Eclipse SWT/Jface核心应用(2)

    《Eclipse SWT/Jface核心应用》全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍了SWT产生的背景以及SWT的一些基本概念和基础知识。第2篇介绍了SWT基本控件的使用,以及事件处理、布局等SWT基本知识的...

    Eclipse SWT/Jface核心应用(1)

    《Eclipse SWT/Jface核心应用》全面介绍了SWT、JFace和RCP的相关知识。全书共分5篇,第1篇介绍了SWT产生的背景以及SWT的一些基本概念和基础知识。第2篇介绍了SWT基本控件的使用,以及事件处理、布局等SWT基本知识的...

    Eclipse_Swt_Jface_核心应用_部分19

    第3章 Eclipse开发环境概述 22 3.1 Eclipse界面一览 22 3.2 Eclipse项目的文件结构 23 3.2.1 设置编译后.class文件的保存目录 23 3.2.2 导入项目使用的包 25 3.2.3 设置编译方式 26 3.2.4 运行程序 27 ...

    Eclipse Swt Jface 核心应用(Java开发利器)

    作者: 强锋科技 那静 出版社... 这是一本全面、深入讲解Eclipse SWT/JFace核心开发及应用的书! 这是一本详细探讨富客户端平台RCP开发及应用的书! 一好心人用相机拍的,我在百度文库下载19份后归到一起(凑合着看吧)

Global site tag (gtag.js) - Google Analytics