Como criar um efeito de desvanecimento no Tkinter? Meu código falha
Estou criando um aplicativo no Tkinter com uma janela personalizada por meio do comando overrideredirect. Liguei meu botão X auto-projetado à função abaixo. Fechar o aplicativo usando meu botão funciona bem e desaparece, mas depois de alguns segundos a janela reaparece, fica presa em um loop (é o que parece) e trava. Ele deveria sair, o que foi feito antes de adicionar o loop fadeout. Alguém pode me dizer por que o programa reaparece e depois falha ou oferece uma alternativa melhor para um efeito de fadeout ao fechar o aplicativo (eu sei que existem kits de ferramentas mais sofisticados, mas preciso usar o Tkinter nesse caso)?
obrigado
def CloseApp(event):
if InProgress==False: #InProgress boolean defined elsewhere in program
if tkMessageBox.askokcancel("Quit","Do you really wish to quit?"):
n=1
while n != 0:
n -= 0.1
QuizWindow.attributes("-alpha", n)
time.sleep(0.02)
Window.destroy() #I've also tried using the quit() method, not that it would make a difference
else:
if tkMessageBox.askokcancel("Quit"," If you quit now you will lose your progress and have to start again. Are you sure you want to quit?"):
n=1
while n != 0:
n -= 0.1
QuizWindow.attributes("-alpha", n)
time.sleep(0.02)
Window.destroy()