我正在向我的 Eclipse 应用程序 (Juno) 添加首选项页面。我想创建类似于您在以下 Eclipse 首选项页面上看到的内容:Eclipse (Juno) > Window Menu > Preferences > Java > Compiler > Building。该首选项页面似乎是使用 org.eclipse.swt.widgets.Tree 创建的,但我不确定。如果是这样,他们是如何创建 TreeItems 的?它们是 org.eclipse.swt.widgets.TreeItems 吗?我需要添加 StringFieldEditors 和 IntegerFieldEditors,或某种类型的字段(TextArea??),前面有一些标签,我可以稍后验证。据我了解,不可能将 Composite 添加到 TreeItem,那么我应该如何解决这个问题?非常感谢任何建议。谢谢。
需要补充一点,因为我不能使用 Eclipse 内部包,有没有其他方法可以使用公共 API 来实现我上面描述的内容?
这是一个想法,但此代码将 TreeItems 内容放在树下。想法?
Composite comp = getFieldEditorParent();
Tree tree = new Tree(comp, SWT.NONE);
tree.setLayout(new FillLayout());
tree.setHeaderVisible(true);
TreeItem item1 = new TreeItem(tree, SWT.NONE);
item1.setText("Name1");
TreeItem item11 = new TreeItem(item1, SWT.NONE);
item11.setText("Name11");
StringFieldEditor s11 = new StringFieldEditor(
"name11",
"label11:",
comp);
item11.setData(s11);
TreeItem item12 = new TreeItem(item1, SWT.NONE);
item12.setText("Name12");
StringFieldEditor s12 = new StringFieldEditor(
"name12",
"label12:",
comp);
item12.setData(s12);
item1.setExpanded(true);
item11.setExpanded(true);
item12.setExpanded(true);
TreeItem item2 = new TreeItem(tree, SWT.NONE);
item2.setText("Name2");