[英]How to dynamically add JFace WizardPage
我目前正在尝试使用JFace向导为应用程序实现“导入向导”。
基本上,我必须根据用户的输入添加下一页“及时”,因为向导中的每个“步骤”都取决于前一个。
因此,在WizardImport的构造函数中,我将使用以下命令添加第一页:
addPage(new WizardImportSourcePage(data));
然后,我要在此页面(WizardImportSourcePage)中添加下一页,具体取决于所选的来源,例如:
btnCsv.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent arg0) {
data.getWizard().addPage(new WizardImportSourcePage(data));
setPageComplete(true);
}
});
如您所见,所有这些都发生在适当的侦听器中。 不幸的是,这不起作用。 该向导缺少“下一步”按钮,但仅显示“完成”按钮,因为在实际按下该按钮之前,它对下一页一无所知。 我已经尝试调用updateButtons()
,但是它没有任何改变。
那么,有什么建议可以使它起作用吗? 动态构建向导页面的正确方法是什么? 大多数教程似乎都假定页面是在开始时创建的,只有使用getNextPage()
才能更改顺序。
在代码扩展Wizard
您可以覆盖
public IWizardPage getNextPage(IWizardPage page)
在给定当前向导页面的情况下,它可以让您决定下一个要返回的页面(还有一个getPreviousPage
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.