所以,我目前正在制作一个自定义的Tkinter模块/API,主要是为了更好地理解Tkinter,但我遇到了一个问题。假设我有以下代码:
import Tkinter as tk
Class Window(object): # Equivalent of Tkinters Tk() in my module
def __init__(self):
self.root = tk.Tk()
...
Class Label(object): # Equivalent of Tkinters label widget in my module
def __init__(self, master):
self.label = tk.Label(master, text="Hello world!")
...
当我创建标签小部件时,我该怎么做
master = Window()
label = Label(master)
而不必做
master = Window()
label = Label(master.root)
我知道我可以将tk.Tk
继承到我的 window 类中,但我只是好奇是否有不同的方法。我做了一些研究,似乎它可能与其中一种带有前导和尾随双下划线的内置方法有关(不确定它们叫什么),但我不知道其中大多数是做什么的。
附言对不起,标题不好,不知道如何用简短的句子来描述它:P
你可以这样写:
self.label = tk.Label(master.root, text="Hello world!")
但正如布莱恩和保罗所说,继承自tk。Tk是最好的选择。