我知道在调用对话框时可以使用createButtonsForButtonBar()为WizardDialog添加/删除新的按钮。但是,我希望对话框的按钮可以根据当前显示的WizardPage进行更改。
例如,对于page1,我有一个名为“编辑”的新按钮。对于page2,我有一个名为“移动”的新按钮。page2显示时不应显示“编辑”,page1显示时不应显示“移动”。关于我如何做到这一点,有什么暗示吗?谢谢。
发布于 2016-03-09 20:41:51
createButtonsForButtonBar使用GridLayout来布局每个按钮设置为GridData的按钮。因此,应该能够使用GridData.exclude标志来排除布局的按钮。
若要停止显示按钮,请使用以下内容:
Button button = getButton(button id);
GridData data = (GridData)button.getLayoutData();
data.exclude = true;
button.setVisible(false);然后,您必须在按钮条组合上调用layout(true)。您还可能必须调整按钮条组合的numColumns字段的GridLayout。
您可以在向导页的setVisible方法中这样做。
https://stackoverflow.com/questions/35901805
复制相似问题