我使用通常的java外观创建了这个模型(见下文),我知道这是用户。 现在我想通过使用SWT,JFace,Eclipse RCP来实现这个模型。
注意:
左侧的NVV / RMV / KVG / RKH应符合accordion pattern的要求
选项卡NVV,RMV,KVG是模块的父选项卡,管理布局选项卡。
左侧的树状菜单打开右侧的标签
问题:
答案 0 :(得分:3)
您指定的大多数小部件都可以在Eclipse RCP框架中使用。
首先,您应该在这里查看一些教程:vogella tutorials
除此之外,我强烈建议您使用WindowBuilder,以便您可以轻松地设计GUI:WindowBuilder
对于顶部的标签文件夹(NVV / RMV ...),您可以使用TabFolder
和TabItem
,如下所示:
tabFolder_1 = new TabFolder(this, SWT.NONE);
tbtmNvv = new TabItem(tabFolder_1, SWT.NONE);
tbtmNvv.setText("NVV");
tbtmRmv = new TabItem(tabFolder_1, SWT.NONE);
tbtmRmv.setText("RMV");
this
代表我的代码中的父Composite
。 TabFolder
在Control
内放置setControl
只是不要忘记调用TabFolder
方法使其内容可见。 TableViewer
可以互相嵌套。或者,您可以将RCP View-s用于顶级选项卡。
对于中间的表,您可以使用JFace组件,即 tableViewer = new TableViewer(tabFolder_1, SWT.BORDER | SWT.FULL_SELECTION);
table = tableViewer.getTable();
table.setLinesVisible(true);
table.setHeaderVisible(true);
tbtmRmv.setControl(table);
tableViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE);
tblclmnMyCol = tableViewerColumn.getColumn();
tblclmnMyCol.setWidth(100);
tblclmnMyCol.setText("My col");
,如下所示:
ExpandBar
如果您想知道如何将数据绑定到表格,您应该查看我上面提到的教程。
对于手风琴,您可以使用 expandBar = new ExpandBar(this, SWT.NONE);
xpndtmItem = new ExpandItem(expandBar, SWT.NONE);
xpndtmItem.setText("Item 1");
xpndtmItem_1 = new ExpandItem(expandBar, SWT.NONE);
xpndtmItem_1.setText("Item2");
,如下所示:
treeViewer = new TreeViewer(composite, SWT.BORDER);
tree = treeViewer.getTree();
tree.setHeaderVisible(true);
tree.setLinesVisible(true);
或TreeViewer:
TreeViewer
您也可以将ExpandBar
放入GridLayout
。
至于布局,我通常坚持{{1}},这是一个很好的全能选手。
简要介绍如何使用这些组件/布局超出了我担心的SO答案的范围,但是您可以随时查看我链接的教程,它们将帮助您完成Eclipse RCP的工作。