在TitleAreaDialog中满足某些条件之前,使按钮不可点击?

时间:2013-12-10 03:10:34

标签: java eclipse eclipse-plugin eclipse-rcp

我正在为eclipse插件创建一个登录对话框,我想知道在提交对话框之前检查某些条件是否满足的最佳方法。 目前我重写了okPressed()函数,然后在满足条件之前不运行超级函数。

遗憾的是,这不是理想的,因为用户没有指出什么是错的。

有什么想法吗?

2 个答案:

答案 0 :(得分:6)

您可以使用以下内容禁用“确定”按钮:

Button ok = getButton(IDialogConstants.OK_ID);
if (ok != null)
  ok.setEnabled(false);

您可以使用

在对话框顶部设置信息
setMessage("message", type);

type可以是IMessageProvider.ERRORIMessageProvider.WARNINGIMessageProvider.INFORMATIONIMessageProvider.NONE

因此,您可以向输入字段添加侦听器,每次字段更改时都会更新消息,并根据需要启用“确定”按钮启用状态。

答案 1 :(得分:0)

要向您的用户显示错误/警告,您可以将TitleAreaDialog.setMessage()与消息和消息类型一起使用。