(英文原文:http://www.eclipse.org/swt/faq.php)
翻译:Frank(frank(at)zijinshi.org)
版本:Version 1.0
The SWT FAQ
_____________________________________
Q1.问:SWT由哪些包组成?
- 答:所有以org.eclipse.swt开头的包。 以下是组成SWT的所有的包的列表:
- org.eclipse.swt
- org.eclipse.swt.accessibility
- org.eclipse.swt.awt
- org.eclipse.swt.browser
- org.eclipse.swt.custom
- org.eclipse.swt.dnd
- org.eclipse.swt.events
- org.eclipse.swt.graphics
- org.eclipse.swt.internal.* (仅供内部使用,不是对外公开的API,所以请不要使用包内的类)
- org.eclipse.swt.layout
- org.eclipse.swt.opengl
- org.eclipse.swt.ole.win32 (仅Windows操作系统可用)
- org.eclipse.swt.printing
- org.eclipse.swt.program
- org.eclipse.swt.widgets
只有以上列出来的包才属于SWT,其它的都不不是。
- Q2.问: SWT 支持JavaBeans 吗?
- 答:在某种程度上来说,这很有意义。但是鉴于操作系统兼容性的约束,SWT镜像了JavaBean的行为。典型的例子就是使用了标准JavaBean的事件分发机制(EventListener, EventObject 和 adapter类)。当然,JavaBean的某些方面特性在SWT里并没有实现,比如说能够用null构造器创建bean,违反SWT运行的底层操作系统的约束。例如,操作系统中,如果一个组件没有指定的parent,是无法创建的。
- 实际上,问题的本质就是如果你利用一个null创建器创建了一个组件,那么当构造函数运行的时候,实际上你并没有真正地创建系统资源(你不得不等到它的parent被制定了之后才能创建)。鉴于性能、效率和一致性等各方面的因素,SWT并不会跟踪对象的状态,去判断该对象是否在之后被创建。
- (说明:由于不懂JavaBean,我不确定这一段翻译得是否准确。如有不对,请指出来哦)
(待续…)
请你留言