如何在eclipse插件开发项目中禁用最大化按钮

时间:2013-09-04 07:13:39

标签: java eclipse-plugin

我正在开发一个插件项目。我想在向导页面的标题栏中禁用最大化按钮。 请帮帮我

3 个答案:

答案 0 :(得分:1)

如果您使用org.eclipse.jface.wizard.WizardDialog打开向导,您可以创建一个子类来在构造函数中设置不同的shell样式:

public class WizardDialogNoMax extends WizardDialog
{
  public WizardDialogNoMax(Shell parentShell, IWizard wizard)
  {
    super(parentShell, wizard);

    setShellStyle(SWT.CLOSE | SWT.TITLE | SWT.BORDER | SWT.APPLICATION_MODAL | SWT.RESIZE | getDefaultOrientation());
  }
}

以上只是省略了SWT.MAX风格。在Mac OSX上,还需要省略SWT.RESIZE(这也意味着无法调整对话框的大小)。

如果要向Eclipse New,Import或Export向导扩展点添加向导,那么我认为您不能更改最大化按钮。

答案 1 :(得分:1)

我认为你正在使用SHELL,问题是shell.setSize(x,y)和shell.setMinimumSize(x,y)等其他shell函数没有效果..我是对的吗?有人可以给出解释。

我的项目中遇到了类似的问题。

当我使用类似

的东西时
public static final int SHELL_TRIM = CLOSE | TITLE | MIN | MAX | RESIZE;

我得到这样的错误: CLOSE无法解析为变量 ...对于TITLE,MIN,MAX,RESIZE也是如此。

现在该怎么办?

由于

答案 2 :(得分:0)

如果您只想删除最大化按钮,请使用此选项:

frame.setResizable(false);

我的一个小项目的示例代码:

public UI() {
    initComponents();
    this.setResizable(false);
}

它是如何工作的: initComponents初始化我的GUI,我从netbeans中的标准GUI构建器构建(您也可以下载Eclipse的swingbuilder,或者自己构建GUI)。

this是我自己的GUI,其中包含我的JFrame。

this有一个名为setResizable()的方法,可以禁用或启用最大化按钮

希望这有帮助