java - 如何限制 ModifyListener 仅用于用户交互

标签 java swt jface

我有一个带有附加 ModifyListener 的文本框。
在实现的 modifyText(ModifyEvent e) 中,我执行所需的功能。

问题在于,每次文本更改都会触发此事件。

如果以编程方式更改文本(通过代码设置文本),我不希望它触发。 我希望它仅在用户更改代码时触发(我不能使用 keylistener,因为当用户单击箭头按钮等时它也会被触发,它也不会检测用户是否复制和粘贴文本)

最佳答案

您可以在调用 setText(..) 之前取消注册您的 ModifyListener,然后再重新注册。

关于java - 如何限制 ModifyListener 仅用于用户交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9385298/

相关文章:

java - 如何在 SWT 中使用鼠标滚轮滚动滚动的复合 Material

java - 在 Eclipse 树列的项目中选择

java - 如何从 Eclipse ColorRegistry 中删除条目?

java - 无法从 MongoDB 中的文档数组中删除最低分数

java - Mac 上的 Apache HttpClient 4.5 出现 "Connection reset"异常

java - 将RCP-Plugin集成到自主开发的SWT/Swing-Context中

java - 为什么我们会收到 AssertionFailedError ?

java - CheckboxTableViewer 第一列全选

java - System.out.println() 与 Android 完全兼容吗?

java - 将哈希集打印到屏幕上