在 Tkinter 中运行关于窗口最小化的命令 [英] Running a command on Window minimization in Tkinter

查看:104
本文介绍了在 Tkinter 中运行关于窗口最小化的命令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

每当按下最小化按钮时,我都有一个 Tkinter 窗口我想运行一个命令,我该怎么做?

I have a Tkinter window whenever the minimize button is pressed I'd like to run a command, how do I do this?

我知道 w.protocol("WM_DELETE_WINDOW", w.command) 将在退出时运行命令.

I know w.protocol("WM_DELETE_WINDOW", w.command) will run a command on exit.

推荐答案

您可以绑定到 事件.

You can bind to the <Unmap> event.

例如,运行以下代码,然后最小化主窗口.当主窗口最小化时,工具窗口应该会消失.

For example, run the following code and then minimize the main window. The tool window should disappear when the main window is minimized.

import Tkinter as tk

class App:
    def __init__(self):
        self.root = tk.Tk()
        tk.Label(self.root, text="main window").pack()
        self.t = tk.Toplevel()
        tk.Label(self.t, text="tool window").pack()
        self.root.bind("<Unmap>", self.OnUnmap)
        self.root.bind("<Map>", self.OnMap)
        self.root.mainloop()

    def OnMap(self, event):
        # show the tool window
        self.t.wm_deiconify()

    def OnUnmap(self, event):
        # withdraw the tool window
        self.t.wm_withdraw()

if __name__ == "__main__":
    app=App()

这篇关于在 Tkinter 中运行关于窗口最小化的命令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆