设置 JFace 向导的大小

8

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

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

9
原来向导的大小与最大的向导页相同。

1
请问您能否提供一段代码片段来设置向导页面的高度? - Samuel Lampa

7

要设置对话框的大小,需要

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

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

// 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);
    ...
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接