Java GUI:SWT/Swing/AWT的介绍及比较
http://tech.ddvip.com 2007年07月23日 社区交流
内容摘要:本文通过对 Eclipse 的 SWT 和 Java Swing、Abstract Windows Toolkit(AWT)GUI 工具包进行比较,可以帮助新应用程序的开发人员从中选择适当的工具。
SWT 部件、布局和事件总结如下(参见 清单 7、清单 8 和 清单 9)。正如您可以看到的一样,这些组件集比 AWT 提供的组件集更为广泛,与 Swing 组件集相比也毫不逊色。
清单 7. 基本的 SWT Class 树(大部分在 org.ecipse.swt.widgets 或 org.eclipse.swt.custom 包或子包中,“*” 表示抽象类,“!” 表示在 custom 包中,“~” 表示在其他包中)
Object *Dialog ColorDialog DirectoryDialog FileDialog FontDialog MessageDialog PrintDialog *Widget Menu *Item CoolItem !CTabItem MenuItem TabItem TableColumn TableItem TableTreeItem ToolItem TrayItem TreeColumn TreeItem *Control Button Label ProgressBar Sash Scale Scrollable Composite ~Browser Canvas *~AbstractHyperlink ~Hyperlink ~ImageHyperlink *~ToggleHyperline ~TreeNode ~Twistie AnimatedProgress !CLabel Decorations Shell FormText StyledText TableCursor !CBanner !CCombo Combo CoolBar !CTabFolder ~ExpandableComposite ~Section ~FilteredList ~FilteredTree ~Form Group ~PageBook ProgressIndicator !SashForm !ScrolledComposite TabFolder Table TableTree ToolBar Tray Tree ViewForm List Text Slider
注意:在另外几个包中还有其他一些 SWT 部件,但是这是基本的部件集。
与 AWT 和 Swing 布局管理器类似,SWT 也提供了非常丰富的布局部件集。布局系统与嵌套容器一起使用,可以生成所需要的任何布局算法。所有这 3 个 GUI 库也可以支持对部件的定位实现绝对控制。SWT 没有等效的 BorderLayout 部件,这一点非常令人失望。FormLayout 对于创建表单基本输入来说非常好用。我认为 SWT 的布局机制比 AWT/Swing 布局部件集的使用更难学习。
责编:豆豆技术应用