代码案例如下:
1、TreeViewer
TreeViewer matchPathTreeViewer = new TreeViewer(sashForm_3, SWT.BORDER);
matchPathTreeViewer.setLabelProvider(new MatchPathLabelProvider());
matchPathTreeViewer.setContentProvider(new MatchPathTreeContentProvider());
MatchTree matchTree = item.getmTree();
matchPathTreeViewer.setInput(matchTree);
2、ITreeContentProvider
private class MatchPathTreeContentProvider implements ITreeContentProvider {
//关闭窗口:会先后执行inputChanged和dispose方法。
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
public void dispose() {
}
// getElements方法决定树的“第一级”结点显示哪些对象。
//inputElement为输入的那个MatchTree对象。
//Object[]是一个数组,数组中一个元素就是一个结点。
public Object[] getElements(Object inputElement) {
if (inputElement instanceof MatchTree) {
MatchTree input = (MatchTree) inputElement;