ここではチェックボタンがチェックされているかどうかに応じてブール値を返すと仮定した簡単なGUIがあります。ブール変数をFalseに設定しました。したがって、空のチェックボタンです。私が理解できないことは、ボタンをチェックすると、そのウィジェットにバインドされた関数がTrueではなくFalseを返すことです。何故ですか?ここで tkinter Checkbuttonウィジェットが間違ったブール値を返す
はfrom tkinter import *
from tkinter import ttk
def getBool(event):
print(boolvar.get())
root = Tk()
boolvar = BooleanVar()
boolvar.set(False)
cb = Checkbutton(root, text = "Check Me", variable = boolvar)
cb.bind("<Button-1>", getBool)
cb.pack()
root.mainloop()
空のボタン機能出力をチェック
...False
それは今ボタンがチェックされていることをTrue
を返すべきではありません...コードですか?
それはラムダコールバックを実行し、
boolvar.trace
を使用 - チェックボタンが機会を得る前に、その状態を更新する。 Checkbuttonの 'command ='オプションを代わりに使用してみてください。 – jasonharper