代码之家  ›  专栏  ›  技术社区  ›  Fredrik

在SWT小部件上“粘贴”侦听器

  •  2
  • Fredrik  · 技术社区  · 15 年前

    我有一个带有SWT小部件的应用程序,比如org.eclipse.swt.widgets.text,我想给粘贴函数添加一些控件。

    其想法是,如果用户可以粘贴一个ID字符串,我会检测到,运行一些代码并粘贴与ID对应的对象。

    所以我在找一些“剪贴板监听器”来添加到我的小部件中,但这似乎不存在。一个keyListener只会捕获由key完成的粘贴,然后您将不得不处理不同的键组合来粘贴到不同的os中。

    基于 this java 1.2 question 我尝试对文本类进行子类化,并重写inser方法,但这不起作用。

    Exception in thread "main" org.eclipse.swt.SWTException: Subclassing not allowed
    

    无论如何,这似乎是一个丑陋的解决方案。

    2 回复  |  直到 14 年前
        1
  •  1
  •   dplass    15 年前

    有一个你可以听的修改器。它不区分键入的文本和粘贴的文本,但根据您似乎想做的,这也可能有效。

        2
  •  3
  •   Kumar    14 年前

    Fredrik,处理modifyListner并不能解决您的问题,因为它将在您每次键入内容时被调用。我相信你只想处理“粘贴”事件。在modifyListner中,您将不知道这是否是由于实际键入的数据或数据通过“粘贴”事件触发的(此粘贴可以是ctrl-v、上下文菜单“粘贴”操作或其他操作系统特定的键)。