我正在尝试使用Sikuli或Jython清除Windows的剪贴板。
我目前正在使用剪贴板从文本框中获取用户输入的文本。我使用剪贴板检查用户是否在单击按钮之前输入了文本。我想在单击按钮之前检查文本框是否为空。
我遇到的问题是,一旦使用剪贴板,我无法清除它。因此,每次单击按钮时,剪贴板中的值都会返回到我的脚本。
我需要能够在抓取用户输入的文本后清除剪贴板,或者找到一种方法来阅读文本框而不使用剪贴板。
帮助。
提前致谢,
马尔
答案 0 :(得分:8)
使用Jython,您可以按照以下步骤将剪贴板的内容设置为空字符串,这就像清除它一样。
from java.awt.datatransfer import StringSelection
from java.awt.datatransfer import Clipboard
from java.awt import Toolkit
toolkit = Toolkit.getDefaultToolkit()
clipboard = toolkit.getSystemClipboard()
clipboard.setContents(StringSelection(""), None)
如下以字符串形式读取剪贴板的内容:
from java.awt.datatransfer import DataFlavor
contents = clipboard.getContents(None)
print contents.getTransferData(DataFlavor.stringFlavor)