【问题标题】:remove default dialog area in swt dialog删除 swt 对话框中的默认对话框区域
【发布时间】:2014-08-25 11:24:13
【问题描述】:

我有一个扩展org.eclipse.jface.dialogs.Dialog 类的类。我创建了一个自定义对话框,因此需要删除其默认的 OK 取消按钮,为此我重写了一个超类方法来执行此操作,如下所示。

protected Button createButton(Composite arg0, int arg1, String arg2, boolean arg3) 
{
        //Retrun null so that no default buttons like 'OK' and 'Cancel' will be created
        return null;
}

一切都很好,现在我观察到在删除 OK 取消按钮后,shell 中会留下一个默认区域。

我尝试了很多但没有被删除,我所做的所有更改都反映了这一点。 所以请告诉我出了什么问题。

【问题讨论】:

    标签: java dialog swt jface


    【解决方案1】:

    您可以覆盖createButtonBar() 并简单地返回null,而不是覆盖createButton(),这样对话框底部就没有空按钮栏了:

    @Override
    protected Control createButtonBar(Composite parent)
    {
        /* You don't want a button bar, so just return null */
        return null;
    }
    

    【讨论】:

      【解决方案2】:

      这对我来说很完美。

      @Override
      protected Control createButtonBar(Composite parent)
      {
          /* You don't want a button bar, so just return null */
          parent.dispose();
          return null;
      }
      

      【讨论】:

        猜你喜欢
        • 2012-08-19
        • 1970-01-01
        • 1970-01-01
        • 2014-02-16
        • 2017-12-20
        • 2017-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多