延时Tkinter

Maq*_*q92 6 python time tkinter

我想在PyDev(Eclipse)python 2.75中创建一个图形窗口.

我做了一些事情,但我想让"入口""眨眼".它测试用户输入.如果它是一个整数,它应该闪烁绿色一秒钟,然后变成白色.但如果它是一串别的东西,它应该闪烁红色,然后变成白色.我已经使用过了,time.sleep()但它并不像我想的那样有效.

以下是此操作的代码:

def sprawdzam():

    z = e.get()
    try:
        z = int(z)
        e.config(bg = 'green')
        time.sleep(2)
        e.config(bg = 'white')    

    except:
        l.config(bg = 'red')
        time.sleep(2)
        e.config(bg = 'white')
Run Code Online (Sandbox Code Playgroud)

fal*_*tru 7

time.sleep 阻止程序的执行.

使用after.

例如:

from Tkinter import *

def blink():
    e.config(bg='green')
    e.after(1000, lambda: e.config(bg='white')) # after 1000ms

root = Tk()
e = Entry(root)
e.pack()
b = Button(root, text='blink', command=blink)
b.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)