繁体   English   中英

最小化程序时是否可以更改图标?

[英]Is it possible to change icon when program is minimized?

我正在开发一个聊天程序,我希望该程序在接收数据时更改图标,但前提是将其最小化。 当您再次拉起程序时,应将图标改回来。 我试图像这样在接收线程中更改它:

def returnrecv():
    while True:
        recieve = s.recv(1024).decode("utf-8")
        winsound.PlaySound('beep.wav', winsound.SND_FILENAME + winsound.SND_ASYNC)
        recieveBox.config(state=NORMAL)
        timeclock = time.strftime('%H:%M')
        recieveBox.insert(END, "[" + timeclock + "]", 'black', "Other: ", 'blue', recieve + "\n\n")
        recieveBox.config(state=DISABLED)
        recieveBox.see("end")

        root.iconbitmap("gouico2.ico")

但是,我如何编程使其仅在程序最小化时才这样做?

您可以使用root.state()来检查窗口的状态。

import tkinter as tk

root = tk.Tk()

def change_icon():
    print (root.state())
    if root.state() == "iconic":
        print ("I am hidden")
    root.after(1000, change_icon)

root.after(1000,change_icon)

root.mainloop()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM