SWT与Swing的比较

原创 2005年04月26日 17:44:00

1.   组件体系:

a)        Swing:通过在父组件上动态调用add()remove()方法,来对组件树进行动态维护,因此,可以存在没有父组件的子组件。

b)        SWT:通过在构造函数的参数中,指定父组件,因此,不可能存在没有父组件的子组件。

 

2.   组件绘制:

a)        Swing:通过调用组件的paint()方法来进行组件的绘制,组件进一步对他的子组件调用paint(),从而完成整棵组件树的绘制。通过子类化,重写paint()方法,可以完全定制一个组件的绘制。

b)        SWTSWT组件只是本地平台上实际组件的一个代理,实际组件采用win32编程方式进行绘制,绘制的过程不在JVM中完成。因此,子类化也不能对绘制进行完全定制。当SWT组件进行绘制时,他在完成了本地的绘制以后,会返回JVM,然后对所有已注册的PaintListener发出通知,因此,通过注册PaintListener可以对组件绘制进行一定程度上的修改。

 

3.   事件模型:

a)        SwingSwing中的事件会跟据当前的焦点进行发送。父组件不能对事件进行过滤。Swing中的事件监听器都是有类型的,因此每个组件所能支持的事件类型是通过方法名来限定的。不能扩展。

b)        SWTSWT中的事件也是根据当前的焦点进行发送。父组件不能对事件进行过滤。SWT中支持有类型的监听器,也支持无类型的监听器,通过addListener(type,listener),我们可以为组件添加任何类型的监听器。

 

4.   包设计:

a)        SwingSwing是一个纯粹的组件库,他没有图形的操作,他的绘制最终转发给Java 2D来完成。

b)        SWTSWT包含了组件库和图形库,他的结构与AWT比较接近。

SWT与Swing区别

笔者过去学习过Swing(也算是AWT的增强版吧), 现在开始学习一下 SWT, 还没有开始深入 JFace 和 RCP, 一步步来吧。 先学好基础的, 又不用着急做项目用。 本文讨论的内容仅限于我已...
  • jiafu1115
  • jiafu1115
  • 2012年04月05日 09:51
  • 5197

[新手必读] 既然有了Swing, 那为什么还要SWT?

(转载) Swing和SWT是采用不同的机制的,AWT是Swing的前身,实际上是调用本地操作系统的控件。由于在不同的操作系统下,提供的控件是不一样的,AWT采用最大公约数的办法,只提供所有操作...
  • pianistOfSoftware
  • pianistOfSoftware
  • 2016年07月15日 15:22
  • 2753

AWT/SWT/SWING 区别和联系

1、AWT和Swing由JAVA开发,符合JAVA的跨平台原则,理念上更加支持移植;2、SWT由IBM资助的eclipse团队开发,采用较为实用的用户体验原则,界面与各个操作系统平台更加接近;3、AW...
  • wpc4321
  • wpc4321
  • 2008年05月31日 23:21
  • 4690

SWT中使用Swing

在SWT出现之前,已经有众多的Swing程序和控件被开发出来,为了充分利用这些现有的资源,SWT需要提供一种在SWT中使用Swing控件的途径。 Swing是通过在AWT的Canvas控件上绘图以显...
  • jianggujin
  • jianggujin
  • 2016年05月17日 14:51
  • 2492

Java中AWT、Swing与SWT三大GUI技术的原理与效率差异

MineHe原创 看了一下对Java GUI讨论的帖子,所以写了一篇文章来阐述一下各种GUI技术的优劣。 Java世界中,目前最知名的三大GUI库分别是: 1、AWT(Abstract Window ...
  • ltx06
  • ltx06
  • 2014年06月09日 20:24
  • 4777

GUI开发之AWT、SWING、SWT和JFACE的比较

 AWT Abstract Windows Toolkit(AWT)是最原始的 Java GUI 工具包。在任何一个 Java 运行环境中都可以使用它。 AWT 是一个非常简单的具有有限 ...
  • Gaowen_HAN
  • Gaowen_HAN
  • 2014年01月27日 18:39
  • 5815

SWT、Swing 或 AWT区别 比较

简介: 本文通过对 Eclipse 的 SWT 和 Java Swing、Abstract Windows Toolkit(AWT)GUI 工具包进行比较,可以帮助新应用程序的开发人员从中选择适当的工...
  • sanfye
  • sanfye
  • 2013年09月15日 22:19
  • 2865

swt与swing的比较

1. 组件体系:  a) Swing:通过在父组件上动态调用add()和remove()方法,来对组件树进行动态维护,因此,可以存在没有父组件的子组件。  b) SWT:通过在构造函数的参数中...
  • huangwj20042008
  • huangwj20042008
  • 2010年06月01日 13:34
  • 206

Swing与SWT的比较

 http://blog.sina.com.cn/s/blog_4b6047bc010008cu.html基于以前的文章,本文Swing和SWT的方方面面做一个简短的比较。它们的优劣点在前面的文章中都...
  • thinkscape
  • thinkscape
  • 2008年09月12日 00:07
  • 1314

SWT中嵌入Swing

SWT中嵌入Swing 转自:http://blog.sina.com.cn/s/blog_4d0d8bf6010008pz.html   1.为何要在SWT中嵌入Swing?     对于像...
  • mike_caoyong
  • mike_caoyong
  • 2011年08月14日 17:27
  • 1596
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SWT与Swing的比较
举报原因:
原因补充:

(最多只允许输入30个字)