SWT和AWT有什么区别?

mic*_*nko 17 java swt awt

我知道这个问题相当笼统而且是一场神圣的战争.你能解释一下为什么当AWT不成功时SWT是成功的,而这两个框架使用相同的原生ui控制思想.是什么让SWT与AWT相比有所不同?如果可能,只需几句话.

谢谢.

Mar*_*rts 23

AWT是原始的跨平台,基于本地对等体的GUI小部件集.它引起了很多关于跨平台不完全一致的抱怨.Sun构建了Swing小部件集来回答这些问题,用纯Java构建它(没有本地同行),但人们抱怨它很慢而且很难看.

IBM将SWT构建为Swing的基于本地同行的竞争对手.它之所以成功,是因为它看起来不错,性能良好并且跨平台非常一致.它通过被许多流行的应用程序使用而巩固了它的地位,Eclipse和Vuze是最明显的.


Mar*_*rik 12

SWT提供了比AWT更丰富的原生重量级小部件集 - 一个适当的比较将是SWT与AWT/Swing.因此,SWT看起来比AWT/Swing更原生.虽然这可以被认为是成功的,但它也可能是一个缺点,取决于您需要实现的内容.在SWT的情况下,您只使用具有所有可能的操作系统限制的重量级本机小部件.使用AWT/Swing,您可以选择将轻量级Swing(纯Java)小部件与本机AWT小部件混合以获得更好的性能.