【问题标题】:Set Size of JFace Wizard设置 JFace 向导的大小
【发布时间】:2011-03-22 23:28:10
【问题描述】:

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

【问题讨论】:

    标签: java eclipse wizard rcp jface


    【解决方案1】:

    是的,让 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
    

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 能否请您提供一个代码 sn-p 关于如何设置向导页面的高度?
      【解决方案3】:

      要设置对话框的大小,是

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

      【讨论】:

        猜你喜欢
        • 2016-09-17
        • 2019-05-29
        • 2014-02-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-10
        • 2011-03-12
        相关资源
        最近更新 更多