在 Applet 和其他应用程序之间复制和粘贴

Copy and Paste Between Applet and Other Applications

我知道在 Java 的较新版本中存在安全策略限制,不允许在小程序和其他应用程序之间进行剪切、复制和粘贴。但是,我的用户需要此功能。更改此处定义的 java 安全策略文件: https://blogs.oracle.com/kyle/entry/copy_and_paste_in_java

在处理由 100 个用户使用的分布式应用程序时是不切实际的。那么还有其他可以在代码中完成的替代方案吗?这是一个签名的小程序。

在 Java 小程序中,即使是已签名的小程序,我也不知道如何访问系统剪贴板。像这样的语句:

剪贴板剪贴板=Toolkit.getDefaultToolkit().getSystemClipboard();

实际上冻结了小程序,使其无法继续。这是使用 Java 1.8。

我在这里读了一些东西:

https://brooknovak.wordpress.com/2009/07/28/accessing-the-system-clipboard-with-javascript/

这为解决问题提供了基础。基本上,您在 java 中捕获选定的文本(假设它是要移动到系统剪贴板的文本),然后从小程序内部调用 Javascript 方法,并将选定的文本作为一个参数。 Java脚本内置了允许填充系统剪贴板的方法。详情在上面的 link 中。请注意,这仅在 Internet Explorer 11 上进行了测试。