我有一个脚本,用户点击"只有一次" " START TEST"按钮,之后,我禁用按钮以避免双击,但是,我注意到"一些如何"如果用户执行"双击"我的应用程序启动第二个操作。
def starttest():
Button(main, text="START TEST", font=("Tahoma", 21), height=1, width=24,
command=starttest, state=DISABLED).place(x=55,y=40)
PS = serial.Serial('COM1', 9600, timeout=.1)
##my code here ...
有谁知道我该怎么做才能防止这种情况发生?
答案 0 :(得分:1)
每次通过按固有按钮调用starttest()
功能时,都会创建一个新的按钮小部件:这就是为什么您可以无限期地点击错误地&# 34;相同的"按钮。
您应该在程序中的其他位置创建该按钮:
...
power_supply_btn = Button(... text="START TEST", command=starttest ...)
power_supply_btn.place(x=55,y=40)
...
然后使用configure()
功能在starttest()
回调中配置该按钮的状态:
def starttest():
global power_supply_btn
power_supply_btn.configure(state=DISABLED)