如何使用Tkinter窗口的标题制作动画?

时间:2015-04-29 04:48:33

标签: python tkinter

这是一个古怪的问题,但我想要一个答案。

我想做的就是制作一个带有窗口标题的动画,我的意思是慢慢删除标题的每个字母,直到它为空。这是相关代码的示例。

def Clearcommand():
for letter in the_window.title():
    the_window.title(the_window.title()[:len(the_window.title())-1])

我希望这段代码 - 在被它附加的按钮调用时 - 将删除一个字母,直到标题被清除。

令人恼火的部分是它没有破坏有问题的代码,它似乎只是在“清除命令”后更新标题。功能结束。

有没有办法强制我监督的窗口更新,或者我是以错误的方式解决这个问题?

示例代码,如果你想测试它:

from Tkinter import *

window = Tk()
window.title('This title contains so much guff.')

def Clearcommand():
    for letter in window.title():
        window.title(window.title()[:len(window.title())-1])

Clearbutton = Button(window,text = 'Clear Title',command = Clearcommand)
Clearbutton.pack(padx = 100)

window.mainloop()

1 个答案:

答案 0 :(得分:1)

就像你在tkinter中做任何其他动画一样:使用after

def Clearcommand():
    title = the_window.title()[:-1]
    the_window.title(title)
    if len(title) > 0:
        the_window.after(1000, Clearcommand)