我刚刚开始在 Tkinter 中编程,我的问题是为什么“master”方法不需要分配 Tk() 类的实例就可以工作? 在其他 Tkinter 项目中,我看到他们有一个以 Tk() 作为参数的变量?即 master = Tk()
from tkinter import Tk, Label, Button
class MyFirstGUI:
def __init__(self, master):
self.master = master
master.title("A simple GUI")
self.label = Label(master, text="This is our first GUI!")
self.label.pack()
self.greet_button = Button(master, text="Greet", command=self.greet)
self.greet_button.pack()
self.close_button = Button(master, text="Close", command=master.quit)
self.close_button.pack()
def greet(self):
print("Greetings!")
root = Tk()
my_gui = MyFirstGUI(root)
root.mainloop()
最佳答案
那么,您分配一个 Tk() 实例:
root = Tk()
my_gui = MyFirstGUI(root)
这里,root是Tk()的一个实例,也是“init”的第二个参数
然后你在“init”中给它命名为“master”
没有?
关于python - Tkinter GUI 组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31629674/