使用GWT读取剪贴板数据

我有这个代码,我已经从浏览器处理CTRL + V ,工作正常,但我需要得到这样的剪贴板数据:

  Event.addNativePreviewHandler(new Event.NativePreviewHandler() { @Override public void onPreviewNativeEvent(Event.NativePreviewEvent event) { NativeEvent ne = event.getNativeEvent(); // When CTRL + V is pressed if (event.getNativeEvent().getKeyCode() == 86 && // 'V' event.getNativeEvent().getCtrlKey() == true) { // need to get the clipboard data } } }); 

虽然我是那个将这个问题标记为重复的人,但我认为这个问题的答案可能有点过时了。 当我谷歌时,我发现了这个讨论 。 那里的答案解决了JSNI的问题,但他们说它在FF中不起作用,因为FF需要手动启用限制。 如果这没有帮助,您可能必须使用副本中的答案。

JavaScript本身不允许简单地读取系统剪贴板,因为这将是一个巨大的安全风险。 但是,大多数浏览器都提供了实现此目的的方法(尽管必须由用户启用)。 因此,API是浏览器依赖的。 对于Firefox, 请查看https://developer.mozilla.org/en-US/docs/Using_the_Clipboard 。

据我所知,这个function有na GWT特定的包装器。 因此,您需要使用GWT JSNI( http://www.gwtproject.org/doc/latest/DevGuideCodingBasicsJSNI.html