Python:使用tkinter从剪贴板复制而不显示wind

2024-04-28 23:44:35 发布

您现在位置:Python中文网/ 问答频道 /正文

在Windows7上运行Python3.4。

我需要将剪贴板中存储的内容复制到python程序中的变量中。我在堆栈溢出上看到,这可以用pywin32或tkinter完成。因为tkinter是python标准库的一部分,所以我认为这是两者中最好的一个,因为用户不必安装外部模块。以下是在tkinter中获取剪贴板数据的代码:

import tkinter
number = tkinter.Tk().clipboard_get()

除了每次执行时都会弹出一个空白的tkinter窗口外,这一切正常。

1)为什么会发生这种情况?通常tkinter在运行tk().mainloop()之前不会显示任何内容。

2)有没有办法避免这个窗口弹出?如果不是,我想我会用pywin32


Tags: 模块数据代码用户import程序number内容
3条回答

This works fine except a blank tkinter window pops up every time this executes.

您可以隐藏此窗口:

from tkinter import Tk
root = Tk()
root.withdraw()
number = root.clipboard_get()

我也有同样的问题。这在windows 7,python 2.7上对我很有效。我现在只有一扇窗户。

from Tkinter import *
root = Tk()
cliptext = root.clipboard_get()
lab=Label(root, text = cliptext)
lab.pack()
root.mainloop()

窗口是由tkinter.Tk()(或其他需要窗口的元素)创建的,而不是由tk().mainloop()。主循环保持程序工作。

也许可以试试Pyperclipclipboard

相关问题 更多 >