我正在尝试Tree
在. SWT 树在启动时并没有填满整个 Group 组合,但是一旦我重新调整 SashForm 的大小,它就会填满。我得到了正确的功能,即树占据了整个 Group 组合。谁能帮帮我?Group
SashForm
sashForm = new SashForm(parent, SWT.HORIZONTAL | SWT.SMOOTH | SWT.H_SCROLL);
sashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
explainStepsGroup = new Group(sashForm, SWT.NONE);
explainStepsGroup.setText("Explain Steps");
GridData gd = new GridData(SWT.FILL,SWT.FILL,true,true);
explainStepsGroup.setLayoutData(gd);
explainStepsGroup.setLayout(new FillLayout());
tree = new Tree(explainStepsGroup, SWT.BORDER);
tree.setLayout(new FillLayout());
tree.setHeaderVisible(true);
tree.setToolTipText("Steps");
...
...
void fillTreeItems() {
TreeItem rootTreeItem = new TreeItem(tree, SWT.NULL);
rootTreeItem.setText("Steps");
rootTreeItem.setExpanded(true);
TreeItem stepNumTreeItem = null;
TreeItem stepTextItem = null;
stepList = m_explainModel.getStepText();
Iterator<String> iter = stepList.keySet().iterator();
while(iter.hasNext()) {
stepNumTreeItem = new TreeItem(rootTreeItem, SWT.NULL);
String stepNum = iter.next();
stepNumTreeItem.setText(stepNum.toString());
stepNumTreeItem.setExpanded(false);
stepTextItem = new TreeItem(stepNumTreeItem, SWT.WRAP);
stepTextItem.setText(stepList.get(stepNum));
tree.showItem(stepNumTreeItem);
}
tree.setRedraw(true);
tree.pack();
}