gpt4 book ai didi

python - 当 tkinter 窗口获得焦点时如何处理

转载 作者:太空宇宙 更新时间:2023-11-03 14:05:02 26 4
gpt4 key购买 nike

我有这个代码:

from tkinter import *
w = Tk()
w.protocol('WM_TAKE_FOCUS', print('hello world'))
mainloop()

它只打印一次hello world,然后就停止工作了。没有更多的 hello world 基本上 WM_TAKE_FOCUS 不起作用。

最佳答案

您可以将函数绑定(bind)到 <FocusIn>事件。当您绑定(bind)到根窗口时,绑定(bind)将应用于根窗口中的每个小部件,因此如果您只想在整个窗口获得焦点时执行某些操作,则需要比较 event.widget。到根窗口。

例如:

import Tkinter as tk

def handle_focus(event):
if event.widget == root:
print("I have gained the focus")

root = tk.Tk()
entry1 = tk.Entry(root)
entry2 = tk.Entry(root)

entry1.pack()
entry2.pack()

root.bind("<FocusIn>", handle_focus)

root.mainloop()

关于python - 当 tkinter 窗口获得焦点时如何处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44613191/

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