Можно ли изменить значок, когда программа свернута? - PullRequest
0 голосов
/ 27 декабря 2018

Я работаю над программой чата и хочу, чтобы программа меняла значок, когда она получает данные, но только если она свернута.И когда вы снова подтягиваете программу, она должна сменить значок обратно.Я попытался просто изменить его в своей ветке получения следующим образом:

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")

Но как мне запрограммировать его, чтобы он делал это только тогда, когда программа свернута?

1 Ответ

0 голосов
/ 27 декабря 2018

Вы можете использовать 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...