2012-11-27 51 views
0

我使用jface.dialogs.TitleAreaDialog,并且在消息区域中,我通常将其设置为空setMessage(“”,IMessageProvider.NONE);并且只有在发生错误时才会分配消息,如setMessage(DialogMessages.MSG_ERROR,IMessageProvider.INFORMATION);如何在消息为空时隐藏jface.dialogs.TitleAreaDialog消息光标

我的问题是,无论何时将消息设置为“”,当用户使用TAB按钮移动鼠标光标时,用户可以在UI上看到鼠标光标,或者他们可以直接单击空白文本字段,但他们无法在那里输入任何内容。

我不想显示鼠标光标,谁能告诉我如何修改它?非常感谢!

回答

2

我不认为有任何简单的方法来实现这一点。 TitleAreaDialog不允许您在标题中访问或更改该消息控件的灵活性。

但是,如果你讨厌这个很多,你可以访问消息控件的父级,并执行一个Composite#setTabList(Control[])与其不包含此Text控制的子级列表。您可以通过重写createContents来获取消息控件的父级,并且返回的控件是该消息Text的父级。这将停止标签。

但是,如果有人点击它,你有一个问题。要解决看看here。这会给你一个很好的提示来摆脱这个问题。