8

我正在构建一个 Eclipse RCP 应用程序,但在设置 JFace 向导的大小时遇到​​了问题。

4

3 回答 3

10

是的,让 Eclipse 为您计算大小通常是个好主意。但是,如果您真的想设置向导的大小,可以通过设置用于打开向导的 WizardDialog 的大小来实现。例如:

Wizard wizard = new MyCustomWizard();
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), wizard);
wizardDialog.setPageSize(WIDTH, HEIGHT);
// Could also use wizardDialog.setMinimumPageSize(WIDTH, HEIGHT) if that's more appropriate
于 2011-11-15T09:48:08.477 回答
9

事实证明,Wizard 是您最大的 WizardPage 的大小。

于 2010-07-29T22:51:32.260 回答
5

要设置对话框的大小,它是

wizardDialog.getShell().setSize(WIDTH, HEIGHT)

要禁用对话框可调整大小,请将 SWT.RESIZE 位保留在自己的 WizardDialog 实现中:

// original WizardDialog class
public WizardDialog(Shell parentShell, IWizard newWizard) {
    super(parentShell);
    setShellStyle(SWT.CLOSE | SWT.TITLE | SWT.BORDER | SWT.APPLICATION_MODAL | SWT.RESIZE);
    setWizard(newWizard);
    ...
}

// Own implementation without SWT.RESIZE
public NoResizeWizardDialog(Shell parentShell, IWizard newWizard) {
    super(parentShell);
    setShellStyle(SWT.CLOSE | SWT.TITLE | SWT.BORDER | SWT.APPLICATION_MODAL);
    setWizard(newWizard);
    ...
}
于 2012-08-30T15:26:19.687 回答