[英]JFace/SWT: What is the best way to add a toolbar with Commands to a Section?
[英]What does JFace add to SWT?
以下是有什么区别的:
何时使用查看器和常规小部件?
PS:如果你能帮我找到理解它们的好资源,那将是一个很大的帮助。谢谢你!
您可以标题为“JFace为SWT添加了什么?”。
观众来自JFace,Widgets来自SWT。
总之,JFace使Widgets易于操作并插入GUI。 JFace使您免于操纵SWT窗口小部件元素的所有苦差事,以向静态窗口小部件添加行为。 SWT只提供监听器,JFace使用这些监听器让您专注于真实世界模型与其SWT表示之间的映射。
让我们看一下您列出的具体示例。
如果您构建标准SWT窗口小部件,则必须描述树的内容(设置一个或多个顶部项,将一些TreeItem挂钩到每个根,可能添加选择侦听器),然后管理其所有转换。 那棵树将具有很少的内置逻辑:只是崩溃/扩展和选择监听器。 期。
那将是一个静态的树。
TreeViewer允许您在该树中注入许多不同类型的行为:如何填充,过滤,如何标记TreeItems。
您将通过注册满足指定接口的类来完成此操作(例如,ILabelProvider将允许您将TreeItem标签映射到文件夹中的文件名)。
没有TreeViewer,构建一个体面的响应树将是一项艰苦的工作。 总之,它可以很容易地将底层真实世界层次模型映射到SWT树表示。
TableViewer也是如此。 TableViewer允许您向表中添加一些自定义行为。 例如,如何编辑单元格。
TreeViewerColumn。 很久以前(在3.3之前),SWT Trees没有列。 树没有列表有列,但它们没有扩展/崩溃。 从3.3开始,您可以向树添加列。 通过向TreeViewer添加TreeViewerColumn而不是仅仅将TreeColumn添加到树(您仍然必须这样做),由于与上述类似的原因,您可以更好地执行此操作,您可以添加对编辑列单元格内容的支持并且您可以填充列(通过再次编写Label Provider)。
TableViewerColumn。 TableViewers也是如此:添加了版本和内容管理。
对于SWT / JFace doc,请看一下。
属于JFace的观众不适合SWT,前进,在谷歌上查找JFace教程,你会发现很多例子。
Steve Northover的书(父亲SWT)“SWT:The Standard Widget Toolkit,Volume 1”(AFAIK还没有第二卷)。
Eric Clayberg和Dan Rube撰写的“Eclipse:构建商业级插件”。 Eric现在是Google副总裁,也是WindowBuilder Pro的父亲
SWT片段也是掌握SWT对象的快速通道。
其他好书包括
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.