В графическом интерфейсе tkinter я хочу печатать различные сообщения на холсте в зависимости от состояния кнопки, на которой я навешиваю. Если сама кнопка ОТКЛЮЧЕНА, я хочу отобразить другое сообщение на холсте, чем когда кнопка НОРМАЛЬНАЯ. у меня есть это (зачищенный) соответствующий код:Проверить состояние кнопки в tkinter
from tkinter import *
class app:
def __init__(self):
self.window = Tk()
self.button = Button(self.window,text="Button",command=self.someCommand,state=DISABLED)
self.button.bind("<Enter>", self.showText)
self.button.bind("<Leave>", self.hideText)
self.window.mainloop()
def showText(self):
if self.button["state"] == DISABLED:
#print this text on a canvas
else:
#print that text on a canvas
def hideText(self):
#remove text
def main()
instance = app()
main()
Это всегда привлекает «что текст» на холсте, а не «этот текст»
Я попытался следующие тоже:
self.button['state']
== 'disabled'
== 'DISABLED'
если я печатаю:
print(self.button["state"] == DISABLED)
это дает мне:
False
Изменение состояния с помощью:
self.button["state"] = NORMAL
работает, как я бы ожидать.
Здесь я прочитал несколько тем, но ни один из них не ответил на вопрос, почему инструкция if не работает.