我的 RCP 有一个奇怪的问题。我不使用 Linux 进行开发,所以我对常见错误的了解非常少。我正在使用 Ubuntu 11.10 来试用 RCP。
在我的 RCP 中,我有一个 SWT 文本,它附加了两个侦听器 - 一个用于焦点 ( FocusAdapter
),另一个用于SWT.DefaultSelection
. 在 中FocusAdapter
,我实现了该focusLost
方法。
行为是这样的,如果并且当用户编辑文本并点击返回键时,将调用SWT.DefaultSelection
侦听器并显示一条消息以确认新文本并更新字段。如果用户编辑文本但没有按返回键而只是在字段外单击,则调用该事件将文本恢复为原始文本 ( )。handleEvent
Text
Text
focusLost
text.setText(originalText);
当我从 Eclipse 启动它时,这似乎工作正常,但是当我通过 Maven+Tycho 导出产品时,这种行为似乎停止工作。发生的情况是,当用户编辑文本时,它只是恢复到原始文本,而不管用户是否按下返回键,或者只是在Text
字段外单击。也不会显示用于确认已编辑文本的消息对话框。
从我收集的信息来看,它似乎只使用了 focusLost 事件,而返回键没有任何效果。如果这是显而易见的事情,我深表歉意,但我没有在我用于主要开发的 Windows 机器上遇到这种情况。