gpt4 book ai didi

java - 在 RCP 中清除系统剪贴板

转载 作者:行者123 更新时间:2023-11-29 05:01:31 25 4
gpt4 key购买 nike

我在 RCP 应用程序中使用剪贴板来实现各种功能。我已经编写了一些单元测试来测试这些函数的功能。它们非常简单,因为它们只是将一些数据复制到剪贴板或从剪贴板粘贴。问题是,这些测试偶尔会失败。我认为这是因为系统剪贴板中遗留了一些数据导致我的测试失败。

所以我尝试写了一个方法来在执行测试之前清除系统剪贴板的所有内容:

 protected void clearClipboard() {
Display display = Display.getCurrent();
Clipboard clipboard = new Clipboard(display);
clipboard.clearContents();
clipboard.dispose();

}

但显然这并没有改变任何东西,而且测试一直失败。这是清除系统剪贴板的正确方法吗?

最佳答案

只有当要清除的数据属于您希望清除所述内容的剪贴板时,才可以清除剪贴板。根据相应的官方 JavaDoc,如果不是这种情况(例如,因为其他一些应用程序将其放在那里),则什么也不做。 .简而言之,如果你没有把它放在那里,你可能不会清除它。

也许尝试先设置(=覆盖)剪贴板的内容,然后再清除它,因此您更有可能拥有这些内容(但要注意有关剪贴板工具获取所有权的警告,如上述 JavaDoc 中所述)。

关于java - 在 RCP 中清除系统剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31965634/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com