我在tinter窗口中创建了以下按钮:
resetall = Button(text = "Clear ALL", command = confirmation)
resetall.pack(side = "left")
此按钮“清除”用户使用Python龟绘制的画布,但我希望在“某些条件”下启用此按钮,例如,如果一个函数正在运行。我试过这个:
if draw.drawing == False:
resetall.config(state = DISABLED)
elif draw.drawing == True:
resetall.config(state = NORMAL)
仅在“draw”功能为true时启用按钮,否则禁用它。但是,它似乎不起作用,因为即使draw函数变为true,它也不会启用。我在这做错了什么?任何帮助深表感谢! :)
答案 0 :(得分:1)
Twas一个非常简单的修复。我所要做的就是将resetall
变为global
变量,然后将resetall.config(state = ENABLED)
分配给draw
。
答案 1 :(得分:0)
将包含按钮的变量设为全局变量,然后使用button_name.config(state=ACTIVE)
或button_name.config(state=DISABLED)
可以更改按钮的状态。
请记住 - 一旦按钮被禁用,如果您在同一功能内将按钮的状态更改为禁用,您将无法激活它。一旦禁用,您将需要另一个功能来激活上一个按钮