from tkinter import *
class GameBoard(Frame):
def __init__(self):
top = Toplevel()
Frame.__init__(self)
self.master.title("test")
self.grid()
#button frame
self.__buttonPane = Frame(self)
self.__buttonPane.grid()
#buttons
self.__buttonA1 = Button(self.__buttonPane,text = "A1",command = self._test("A"))
self.__buttonA1.grid()
def _test(self,test):
if self.__buttonA1["state"] == NORMAL:
print(test)
def main():
GameBoard().mainloop()
main()
このコードは変数が原因で機能しません。変数テストを削除して作成すると、
from tkinter import *
class GameBoard(Frame):
def __init__(self):
top = Toplevel()
Frame.__init__(self)
self.master.title("test")
self.grid()
#button frame
self.__buttonPane = Frame(self)
self.__buttonPane.grid()
#buttons
self.__buttonA1 = Button(self.__buttonPane,text = "A1",command = self._test)
self.__buttonA1.grid()
def _test(self):
if self.__buttonA1["state"] == NORMAL:
print("hi")
def main():
GameBoard().mainloop()
main()
変数の入力を可能にするようにコードを修正するにはどうすればよいですか?これは私が行っているテストにすぎないので、はるかに大きなコードで動作させることができます。