步入SWT/JFace世界,你还等什么

swt/jface控件的隐藏与显示 swt/jface控件的隐藏与显示部分源代码: import org.eclipse.swt.SWT;import org.eclipse.swt.events.SelectionAdapter;import org.eclipse.swt.events.SelectionEvent;import org.eclipse.swt.layout.GridData;import org.ecl 阅读详情
本文主要讨论 Java中的GUI图形库之一:SWT/JFace。在本文的第一部分,将解释什么是SWT/JFace以及如何安装SWT/JFace。在本文的第二部分将以实例的方式讨论如何使用SWT/JFace编写GUI程序。

   一、 进入SWT/JFace世界

  1. 什么是SWT/JFace

  Java是一种强大的编程语言。但强大就意味复杂,尤其是和Java相关的名词就象天上的星星一样,数都数不过来。在本文中就涉及到两个比较常用的名词SWT和JFace。在标题中将SWT和JFace放到一起,并不是说SWT和JFace是一个意思,而是说它们的关系非常紧密。

  基于Java的图形库最主要的有三种,它们分别是 Swing、AWT和SWT。其中前两个是Sun随JDK一起发布的,而SWT则是由IBM领导的开源项目(现在已经脱离IBM了) Eclipse的一个子项目。SWT的执行效率非常高。这是由于SWT的底层是由C编写的。由于SWT通过C直接调用系统层的GUI API。因此,使用SWT编写GUI程序,在外观上就和使用C++、Delphi(在Windows下)编写的程序完全一样。它的这一点和AWT类似。AWT在底层也是使用C直接调用系统层的GUI API。但它们是有区别的,最大的区别可能就是一个是Sun提供的,一个是Eclipse自带的。这就意味着如果使用AWT,只要机器上安装了JDK或JRE,发布软件时无需带其它的库。而如何使用SWT,在发布时必须要自带上SWT的*.dll(Windows版)或*.so(Linux/Unix版)文件以及相关的*.jar包。还有就是它们所提供的图形接口有一些差异。SWT可能更丰富一些,我们可以看看Eclipse的界面就知道了。但随着Sun对AWT库的不断更新,AWT的图形表现能力也在不断地提高。

  虽然SWT很强大,但它比较底层。也就是说它的一些功能在使用上还比较低级,不太符合面向对象的特征。因此,在SWT的基础上又开发了JFace。JFace在SWT上进行了一定的扩展。因此,也可说JFace是基于SWT的,就象在VC中使用MFC来包装Win32 API一样。

  2. SWT/Face的安装

  在发布使用SWT/JFace编写的GUI程序时,要随程序带上相应的库文件。对于Windows版的SWT来说,SWT包含有4个dll文件和一个jar文件。它们是swt-awt-win32-3305.dll、swt-gdip-win32-3305.dll、swt-wgl-win32-3305.dll、swt-win32-3305.dll和swt.jar。在发布时,要将4个dll文件放到path路径中,或者使用-Djava.library.path设置相应的路径。将swt.jar放到classpath路径中,或使用-classpath设置相应的jar包。而对于JFace,除了上述的5个文件外,还要带上5个jar包:

org.eclipse.core.runtime_3.1.2.jar
org.eclipse.jface_3.1.1.jar
org.eclipse.jface.text_3.1.2.jar
org.eclipse.osgi_3.1.2.jar
org.eclipse.text_3.1.1.jar

  这5个jar包都可以在eclipse的plugins目录中找到,在这5个文件后面的版本号可能会因为eclipse的版本号不同而不同,但前面的部分都是一样的。读者在找这些jar包时应注意这一点。

  SWT的开发包可以从http://www.eclipse.org单独下载,也可以从eclipse的plugins目录复制。而JFace的开发包并未提供单独的下载,因此,JFace的开发包必须要从plugins目录得到。
 
SWT/JFace学习总结 --- 发表一篇以前写得项目开发总结 SWT/JFace学习总结一. SWT/JFace的基本介绍1.1 Face与其他图形界面设计工具的比较Java图形界面实现方式有很多,比如AWT、SWING和SWT等。AWT和SWING不论是在速度上还是美观上都有很大的不足;对于比较庞大而复杂的系统,用AWT或SWING相很难实现,因为运行的速度会相当的慢。SWT直接使用操作系统提供的本地图形接口,具备本地化的Look & Fe 阅读详情

相关推荐

全面探索SWT/JFace:Java GUI编程

本文还有配套的精品资源,点击获取 简介:本文详细介绍了SWT和JFace,这是Eclipse项目中的两个Java GUI编程库。SWT提供了一个与原生控件交互的用户界面,并通过JNI提高性能。JFace则在SWT之上增加了一层抽象,简化了GUI编程,并引入了数据绑定和MVC架构等概念。文章将覆盖基础控件使用、布局管理、事件处理以及如何进行高级主题的学习,例如集成SWT和JF...

weixin_42298164的博客 1004

java jface swt_SWT/Jface开发入门指南(一)

SWT/Jface开发入门指南写在前面的话终于决定提起笔来写一篇关于swt和JFace编程的文章。在开始之前,我想先介绍一下你能够从将要出现的这一系列文章里得到什么,以及更重要的,你不能得到什么。我们的时间是如此之重要,以至于我们很难容忍把它浪费在自己不关心的事情上。因为我刚开始写,所以到底这些文章会分成几次发布出来,也很难讲。但是我心里大体有这样一个提纲。也就是说,我打算介绍以下方面的内容:l设...

weixin_39592789的博客 602

深入实践:掌握SWT与JFace图形界面开发

本文还有配套的精品资源,点击获取 简介:本书《Swt.JFace.in.Action》深入介绍Java图形用户界面开发,着重于SWT和JFace开源库。SWT提供原生GUI开发能力,而JFace在此基础上提供了数据绑定和高级组件。全书由基础概念到实战应用,系统讲解了控件、布局、事件、线程、数据绑定及对话框设计等多个方面,并通过实例代码展示了如何使用这些技术来创建复杂的用户界...

weixin_35761094的博客 1617

Eclipse插件开发之Jface

  1. 如何使用开源中国之码云  2. SWT UI之托盘对象Tray和TrayItem  3. jface常用对话框  4. SWT UI之分隔框容器SashForm  5. SWT UI之进度条ProgressBar  6. SWT UI之时间控件DateTime  7. SWT layout之堆叠布局StackLayout  8. swt & jface ui可视化工具安装  9. swt & jface ui可视化工具使用一  10. swt & jface ui可视化工具使用二  11. 用户小系统之表结构设计  12. 用户小系统之DAO设计与开发  13. 用户小系统之添加用户  14. 用户小系统之查询所有用户  15. 用户小系统之更新用户

别再用UE5默认材质:用Substance Painter一招提升写实感

今天,我就把这套从模型准备到引擎最终呈现的全流程技巧毫无保留地分享出来,这套方法不仅能让你的作品细节炸裂,更能让你理解次世代PBR(Physically Based Rendering)材质的底层逻辑。

海外旅居设计师,15年设计经验。 1324

华为硬件工程师笔试题

1、基尔霍夫定理的内容是什么?(仕兰微电子)   基尔霍夫定理包括电流定律和电压定律。   电流定律(KCL):在集总电路中,任何时刻,对任一结点,所有流出结点的支路电流的代数和恒等于零。   电压定律(KVL):在集总电路中,任何时刻,沿任一回路,所有支路电压的代数和恒等于零。   2、平板电容公式(C=εS/4πkd)。(未知)   3、最基本的如三极管曲线特性。(未知)   4、描述反馈电路...

weixin_33717117的博客 2万+

SWT/Jface开发入门指南(十一)

JFace中的工具条和菜单前一节中我们简单介绍了一下Action。其实所谓的Action就是一个最常用的事件,举个例子来说,对于一个按钮来说它可以有多个事件,比如按键,焦点,鼠标,等等等等吧,但是实际上在使用程序的时候,我们最关心的,就是按下去这个按钮会发生什么,这个其实就是所谓的Action。如果大家以前做过swing/awt变成的话,应该对Action不会陌生。在JFace里面,一个Actio

关于软件开发技术和挖掘机技术。。。 8720

新手入门:从零开始学习PCB飞针测试全流程(附常见问题解答)

本文详细介绍了PCB飞针测试的全流程,从核心原理、设备解析到实操步骤和常见问题解答,帮助新手快速掌握这一电子制造领域的关键质检技术。内容涵盖测试资料准备、参数设置、设备操作技巧以及故障排查方法,特别适合小批量PCB生产的质量检测需求。

weixin_29295541的博客 390

java基础 ---SWT/JFace

java基础 ---SWT/JFace很久没来博客写点东西了,主要是这段时间一直在研究SWT/JFace,在上周的总结我不是提到过吗,有机会会研究一下SWT和JFace。经过1个多星期的摸索,终于将之前用Swing设计的通讯录程序修改成使用SWT和JFace版本的了。说实话这个过程实在不是那么容易的,想必各位也知道在AWT和Swing这两大GUI界面API之外,还有个由IBM公司开发的一套专门

易课堂 1万+

树莓派与无人机协同实战:基于OpenCV的地标识别优化策略

本文深入探讨了基于树莓派与无人机的协同系统,重点分享了利用OpenCV优化地标识别以实现精准降落的实战策略。内容涵盖从应对复杂光照的图像预处理、鲁棒的轮廓几何过滤,到通过ROS进行稳定通信,以及实现分层控制与状态机设计,旨在提升系统在真实环境中的可靠性与性能。

y2z3a4b5c的博客 1086

YOLOv8改进策略【YOLO和Mamba】| 2024 VM-UNet,高效的特征提取模块VSS block 二次创新提高精度

VM-UNet模型设计的出发点是解决现有CNN-based和模型在医学图像分割中的局限性,利用(SSMs)的优势,提出一种更有效的医学图像分割模型。具体来说,CNN-based模型在捕捉长距离信息方面存在不足,而模型由于自注意力机制的二次复杂度导致计算负担较重。SSMs模型如Mamba不仅在建模长距离依赖方面表现出色,还具有线性计算复杂度,这为VM-UNet的设计提供了理论基础。

Limiiiing的博客 616

JFace进度条使用经验一则

    我讨论的进度条主要是JFace的进度条,RCP已经提供了完善的Job组件,为什么还要用JFace的进度条呢?原因是我要在登陆界面上做进度处理,也就是使用Eclipse3.3提供的AbstractSplashHandler特性,可以将原有的启动画面替换成为一个登陆界面,启动这个登陆界面时,Eclipse的Platform此时还没有启动,所以不能使用RCP本身的Job组件了。     由于是...

草根笔记 444

构建OneService:打造高效、安全、灵活的企业级数据服务平台

数据服务(OneService)作为统一的数据服务出口,实现了数据的统一市场化管理,有效地降低数据开放门槛的同时,保障了数据开放的安全。

数据与算法架构提升之路专栏 2106

步入SWT/JFace世界,你还等什么?

    本文主要讨论Java中的GUI图形库之一:SWT/JFace。在本文的第一部分,将解释什么是SWT/JFace以及如何安装SWT/JFace。在本文的第二部分将以实例的方式讨论如何使用SWT/JFace编写GUI程序。   一、 进入SWT/JFace世界  1. 什么是SWT/JFace   Java是一种强大的编程语言。但强大就意味复杂,尤其是和Java相关的名词就象天上的星星一样

1033

数据分析案例-2024年裁员数据集可视化分析

本实验数据集来源于Kaggle,原始数据集为2020-2024年裁员数据,共有3577条,12个变量,该数据集提供了不同公司的裁员信息。它包括以下几栏:Company:裁员发生的公司名称。Location_HQ:公司总部位置。Industry:公司所属的行业或部门。Laid_Off_Count:公司解雇的员工数量。Percentage:公司员工被解雇的百分比。Date:裁员发生的日期。Source:信息来源网址。Funds_Raised:公司募集资金的信息。

m0_64336780的博客 1万+

Python 爬虫进阶技巧:定时爬虫任务实现无人值守采集

常规爬虫多依赖手动触发脚本运行,单次采集完成后需人工二次启动,无法满足日常周期性数据监控、行情抓取、资讯同步、业务台账定时归档等常态化采集需求。搭建可自主调度、自动启停、周期循环的定时爬虫任务,脱离人工干预实现无人值守全自动采集,是爬虫从临时脚本走向工程化落地的关键一步。schedule 轻量定时库官方文档APScheduler 高级定时框架官方文档Python time 内置模块官方文档Linux crontab 定时任务官方手册。

2503_91057718的博客 1117

SWT和JFace应用笔记

SWT和JFace应用笔记 链接:https://pan.baidu.com/s/1_ukYlSIYpKbCGhfHm2-vMQ 提取码:xla3 1.SWT笔记 一.创建一个SWT程序有3个部分 1.初始化窗口:首先创建Dispaly对象和Shell对象。 Display:对象封装了调用操作系统的有关方法 Shell:该对象示窗口对象 2.添加控件:在Shell1窗口对象添加按钮,文本框,...

weixin_39819880的博客 3277

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

SWT/JFace开发入门指南(一)

写在前面的话终于决定提起笔来写一篇关于swt和JFace编程的文章。在开始之前,我想先介绍一下你能够从将要出现的这一系列文章里得到什么,以及更重要的,你不能得到什么。我们的时间是如此之重要,以至于我们很难容忍把它浪费在自己不关心的事情上。因为我刚开始写,所以到底这些文章会分成几次发布出来,也很难讲。但是我心里大体有这样一个提纲。也就是说,我打算介绍以下方面的内容:l         设定swt以及

关于软件开发技术和挖掘机技术。。。 1万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

SWT/JFace 按键、事件、监听

JAVA.SWT/JFace: 按键与其对应的常量表、KeyEvent事件比较、VerifyEvent事件比较 2010年07月27日 星期二 22:19 《Eclipse SWT/JFACE 核心应用》清华大学出版社 8.3.2 键盘事件的各种属性 按键与其对应的常

Base 5995

SWT/JFace基础

一.      SWT/JFace的基本介绍1.1 Face与其他图形界面设计工具的比较Java图形界面实现方式有很多,比如AWT、SWING和SWT等。AWT和SWING不论是在速度上还是美观上都有很大的不足;对于比较庞大而复杂的系统,用AWT或SWING相很难实现,因为运行的速度会相当的慢。SWT直接使用操作系统提供的本地图形接口,具备本地化的Look & Feel,效率高且美观。因此

jackkp_Cactus的专栏 2826

SWT/JFace(一)——概述

一、SWT 1. 概述 SWT(Standard Widget Toolkit,标准图形工具箱)是一种用java开发的GUI程序的技术。与出自Sun的AWT (Abstract Widget Toolkit,抽象图形工具箱)和Swing不同,SWT是Eclipse的开发人员自行建造的。它无论在界面美观度上还是在性能上都远远超越了AWT和Swing,即使和操作系统上的本地图形界面程序相比也毫不逊色,...

cole丶的博客 3007

SWT/JFace开发(一)

JFace 在 SWT 的基础上添加了其他功能,使其更易于使用。在本说明中,我们在 SWT API 的基础上使用 JFace 构建器 API,以简化基于 SWT 的用户界面的创建。如果某个 Widget 本身不在一个平台上可用,SWT 将在此平台上模拟此 Widget。) 是一个基于 Java 的用户界面库,用于开发桌面应用程序。它提供了许多标准小部件,例如按钮和文本字段以及创建自定义小部件的选项。SWT 尽可能使用平台的本机小部件。进入swt下载界面,以当前最新的。不断重复第3步直至所有包导入完成。

qq_58721185的博客 824

SWT/JFace高级应用

SWT/JFace高级应用1菜单和工具栏l         菜单栏在程序中,菜单是提供信息比较好的方式,SWT中通过Menu和MenuItem实现菜单和菜单项,在程序中添加菜单步骤如下:u       创建Menu对象,并指定创建风格,menuBar = new Menu(shell,SWT.BAR);u       一般的,我们不在菜单栏上直接创建Item,而是先创建一个新的

jackkp_Cactus的专栏 1798

SWT/JFACE表格Table可编辑

SWT/JFACE表格Table可编辑 2009-10-12 22:52 今天刚好遇到了这个问题写了个例子,。 public class Test { public static String []NAMES={"周杰伦","王力宏","SHE"};//定义下拉

3709

SWT/JFace开发入门指南

写在前面的话终于决定提起笔来写一篇关于swt和JFace编程的文章。在开始之前,我想先介绍一下你能够从将要出现的这一系列文章里得到什么,以及更重要的,你不能得到什么。我们的时间是如此之重要,以至于我们很难容忍把它浪费在自己不关心的事情上。因为我刚开始写,所以到底这些文章会分成几次发布出来,也很难讲。但是我心里大体有这样一个提纲。也就是说,我打算介绍以下方面的内容:l         设

回到未来。。。 3614
上一篇: Java学习从入门到精通
下一篇: Hello,world!:搭建一个swt/JFace开发环境
hellojzz
博客等级 码龄20年 9粉丝 12原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值