5.1.8. TreeViewerTreeViewer 类封装了tree控件。树查看器按照父子关系来显示分等级的对象列表。此查看器需要设置标签供给器和内容供给器。The CheckboxTreeViewer加入了对个别条目泛灰的支持,还可以选中和反选与条目相关联的复选框。常用的API包括:
CheckboxTreeViewer 增加了如下API:
下面的程序例子展示了怎样构建一个树查看器。(参见 Figure 5-10)。
import org.eclipse.jface.viewers.*;import org.eclipse.swt.*;import org.eclipse.swt.layout.*;import org.eclipse.swt.widgets.*;public class TreeViewerExample { public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); shell.setText("Tree Viewer Example"); shell.setBounds(100, 100, 200, 200); shell.setLayout(new FillLayout()); final TreeViewer treeViewer = new TreeViewer(shell, SWT.SINGLE); treeViewer.setLabelProvider( new PersonListLabelProvider()); treeViewer.setContentProvider( new PersonTreeContentProvider()); treeViewer.setInput(Person.example()); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }}
Figure 5-10. TreeViewer 样例
import org.eclipse.jface.viewers.*;public class PersonTreeContentProvider extends ArrayContentProvider implements ITreeContentProvider { public Object[] getChildren(Object parentElement) { Person person = (Person) parentElement; return person.children; } public Object getParent(Object element) { Person person = (Person) element; return person.parent; } public boolean hasChildren(Object element) { Person person = (Person) element; return person.children.length > 0; }}
|
JFace Viewer 4
最新推荐文章于 2022-02-18 08:30:12 发布
73

被折叠的 条评论
为什么被折叠?



