我有一个带有 SWT 小部件的应用程序,例如 org.eclipse.swt.widgets.Text,并且想要向粘贴功能添加一些控件。
这个想法是,如果用户可以粘贴一串 ID,我会检测到这一点,运行一些代码并粘贴与 ID 相对应的对象。
所以我正在寻找某种“ClipBoardListener”来添加到我的小部件中,但这似乎不存在。键监听器只会捕获按键完成的粘贴,然后您必须处理不同的按键组合以粘贴到不同的操作系统中。
基于this java 1.2 question我尝试对文本类进行子类化并重写 inser 方法,但这不起作用
Exception in thread "main" org.eclipse.swt.SWTException: Subclassing not allowed
无论如何,这似乎是一个丑陋的解决方案。
最佳答案
Fredrik,处理ModifyListner 并不能解决您的问题,因为每次您键入内容时它都会被调用。我相信您只对处理“PASTE”事件感兴趣。就像在ModifyListner中一样,您不会知道这是否是由于有人实际输入的数据或数据通过“PASTE”事件而来而触发的(此粘贴可以是CTRL-V、上下文菜单“粘贴”操作或其他操作系统特定键)
关于eclipse - "paste"SWT 小部件上的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2944618/