使用Python和Tkinter从剪贴板复制

时间:2015-02-03 13:51:37

标签: python tkinter clipboard

我试图从Windows剪贴板中取一个字符串并将其粘贴到Tkinter GUI的列表框中。在尝试复制图像之前,它很有效。

clipboardData = root.selection_get(selection="CLIPBOARD")
listbox.insert(0, clipboardData)

我曾尝试使用Tkinter,pyperclip和剪贴板。如何避免非文本内容?

1 个答案:

答案 0 :(得分:0)

使用Tkinter,我会使用try..except块来insert存在的剪贴板数据,并忽略它不在的地方(或者,可选地,添加一些默认值)值)。这并不是专门撤销任何图像类型的剪贴板内容,但它拒绝任何不符合myTkObject.clipboard_get()预期格式的内容。默认情况下,这是一个字符串,但您可以使用函数type关键字参数进行更改。

这是一个以Nodak和jonrsharpe的回答和评论为基础的例子:

from Tkinter import Tk
myTkObject = Tk()
try:
    listbox.insert(0, myTkObject.clipboard_get())
except Tkinter.TclError:
    pass  # Instead of do-nothing, you can insert some default value if you like.