我使用SWT/JFace 折叠面板知识,创建了几个折叠面板,当我想要删除的时候,怎么把创建出来的折叠面板删除??,一下是代码,求教。
package GUI;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.forms.events.ExpansionAdapter;
import org.eclipse.ui.forms.events.ExpansionEvent;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.ScrolledForm;
import org.eclipse.ui.forms.widgets.Section;
public class NonEclipse {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
// FormToolkit toolkit = null;
shell.setLayout(new GridLayout(1, false));
shell.setText("表单实例");
Button button = new Button(shell, SWT.NONE);
button.setText("创建步骤");
FormToolkit toolkit = new FormToolkit(display);
button.addSelectionListener(new SelectionListener() {
@Override
public void widgetSelected(SelectionEvent arg0) {
// TODO Auto-generated method stub
// 创建表单工具对象
// 通过表单工具对象,创建可滚动的表单对象
ScrolledForm form = toolkit.createScrolledForm(shell);
// 设置表单文本
form.setText("Hello Non Eclipse 表单");
// 设置表单布局
form.getBody().setLayout(new GridLayout(2, false));
// 创建内容区
Section section = toolkit.createSection(form.getBody(),
Section.TWISTIE | Section.TITLE_BAR | SWT.CHECK);
// 设置标题文字
section.setText("步骤一");
// 创建一个面板
Composite composite = toolkit.createComposite(section);
// 设置布局
composite.setLayout(new GridLayout(2, false));
// 创建控件
Button button = toolkit.createButton(composite, "按钮一", SWT.BORDER);
Button button2 = toolkit.createButton(composite, "按钮二", SWT.BORDER);
Button button3 = toolkit.createButton(composite, "按钮三", SWT.BORDER);
Button button4 = toolkit.createButton(composite, "按钮四", SWT.BORDER);
// 设置内容去控件
section.setClient(composite);
section.addExpansionListener(new ExpansionAdapter() {
@Override
public void expansionStateChanging(ExpansionEvent e) {
// TODO Auto-generated method stub
form.reflow(true);
}
});
shell.layout();
}
@Override
public void widgetDefaultSelected(SelectionEvent arg0) {
// TODO Auto-generated method stub
}
});
shell.open();
shell.layout();
shell.setSize(400, 400);
while (!shell.isDisposed()) {
if (display.readAndDispatch()) {
display.sleep();
}
}
// 释放表单工具对象
toolkit.dispose();
display.dispose();
}
}



