我想在执行命令时禁用tk inter按钮,并在命令执行完成后将其启用。我试过这个代码,但它似乎不工作。在执行命令时禁用Tkinter按钮
from Tkinter import *
import time
top = Tk()
def Run(object):
object.config(state = 'disabled')
print 'test'
time.sleep(5)
object.config(state = 'normal')
b1 = Button(top, text = 'RUN', command = lambda : Run(b1))
b1.pack()
top.mainloop()
命令执行运行良好,但每次我点击按钮被执行命令时,“测试”出现在控制台后立即运行功能完成。这意味着在运行功能执行时按钮不会被禁用。任何建议来解决这个问题?
在此先感谢
使用'sleep'作为你真正想做的事情的占位符是一个糟糕的选择。 “睡眠”会导致整个gui结冰。你到底在做什么?一个长计算?长数据库查询? – 2014-10-29 22:34:40