from tkinter import *
class SampleClass:
def __init__(self, master):
frame = Frame(master)
frame.pack()
self.printButton = Button(master, text = "PrintButton", command=self.printMessage)
self.printButton.pack(side = LEFT)
def printMessage(self):
print("Hulk Smash!")
root = Tk()
samp = SampleClass(root)
root.mainloop()
Tkinter root
仅作为参考传递给该类一次。因此,当根更改(按下按钮或使用条目小部件输入某些文本)时,root
的状态会发生变化。课程samp
如何知道root
已更改?我了解root.mainloop()
方法在循环中调用root
,但类samp
似乎不知道更改引用。我在这里缺少什么?
答案 0 :(得分:1)
Tkinter是一个围绕Tcl解释器的薄包装器,它已经加载了" tk"包。当您创建窗口小部件(例如:Frame(master)
)时,这将在Tcl解释器中创建一个对象。它是Tcl解释器,它保持对主窗口小部件的引用,它是响应更改的Tcl解释器。