[英]Program freezes when I perfrorm Ctrl+c after executing tkinter clipboard methods. Why it does that and how to avoid it?
我发现在 clipboard_append 或 clipboard_clear tkinter 方法之后使用 Ctrl+c 后,我会冻结几秒钟。
我想像这样使用它:
from tkinter import Tk
t = Tk()
def retriveClipboard(clear=False):
try:
data = tk.clipboard_get()
if clear:
tk.clipboard_clear()
tk.clipboard_append('')
except Exception as e:
data = ''
return data
def main():
for coord in coords:
mouseMove(coord)
press('Ctrl','c', click=True)
print(retriveClipboard(True))
如果您在控制台中使用 ctrl+c 和 tkinter 进行测试,您每次都会得到完全相同的滞后。
您可以测试此代码(请务必按照评论建议进行中间 ctrl+c)
from tkinter import Tk
t= Tk()
# copy something using Ctrl c
t.clipboard_get()
t.clipboard_clear()
t.clipboard_append('')
# copy something using Ctrl c
# experience lag here
我不想每次都在函数中创建一个新的 Tk 对象,因为它需要太多时间,不是吗?
Edit1:所以在上面的例子中,如果我们排除 t.clipboard_get() 行,它似乎不会冻结。
Edit2:在测试示例中,只有当我从程序运行的同一个控制台 Ctrl+c 时它才会冻结。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.