小编Hol*_*urm的帖子

Tkinter窗口事件<可见性>

如果Windows可见性已更改,我尝试获取一个事件。我发现有一个名为“可见性”的事件。操作系统是Windows 64位。因此,我以以下方式实现:

root.bind('<Visibility>', visibilityChanged)
Run Code Online (Sandbox Code Playgroud)

但是,无论是否有窗口,我总是处于“ VisibilityUnobscured”状态。此事件的正常行为是什么?如何实现这样的功能?

示例编:

import tkinter as tk

class GUI:
    def __init__(self, master):
        self.master = master
        master.title("Test GUI")
        self.master.bind('<Visibility>', self.visibilityChanged)
        self.label = tk.Label(master, text="GUI")
        self.label.pack()

        self.close_button = tk.Button(master, text="Close", command=master.quit)
        self.close_button.pack()

    def visibilityChanged(self, event):
        if (str(event.type) == "Visibility"):
            print(event.state)

root = tk.Tk()
my_gui = GUI(root)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

python visibility tkinter

5
推荐指数
1
解决办法
872
查看次数

标签 统计

python ×1

tkinter ×1

visibility ×1