从另一个文件调用 Tkinter 对象
Calling Tkinter Objects from Another File
class SneakerGuide(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
global stockXURLInput
stockXURLInput = Entry(sneakerBasicDetails)
stockXURLInput.grid(row=5, column=1)
所以我有这个 class,在它里面,我有这个函数,它是一个初始化函数,有了它我有一堆不同的东西我想 .get() 从。我只是打了一个例子。但是我正在尝试在 class 之外获取条目输入(实际上我正在尝试从另一个文件中获取它,但我知道如何导入它们和其他东西。在这种情况下我将如何去做
对于您想要在 class 之外访问的对象,您必须使它们成为 class 的实例属性。
例如,您不会像示例中那样使用 global
。使用 global
在很大程度上违背了使用 class 的目的。相反,您可以这样做:
class SneakerGuide(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
self.stockXURLInput = Entry(sneakerBasicDetails)
self.stockXURLInput.grid(row=5, column=1)
要从条目中获取值,您所需要的只是对 class.
实例的引用
root = tk.Tk()
...
guide = SneakerGuide(root)
...
print(f"The url is {guide.stockXURLInput.get9)}")
这不是 tkinter 独有的,这就是所有 python 对象的工作方式。
class SneakerGuide(tk.Frame): def __init__(self, parent, controller): tk.Frame.__init__(self, parent) global stockXURLInput stockXURLInput = Entry(sneakerBasicDetails) stockXURLInput.grid(row=5, column=1)
所以我有这个 class,在它里面,我有这个函数,它是一个初始化函数,有了它我有一堆不同的东西我想 .get() 从。我只是打了一个例子。但是我正在尝试在 class 之外获取条目输入(实际上我正在尝试从另一个文件中获取它,但我知道如何导入它们和其他东西。在这种情况下我将如何去做
对于您想要在 class 之外访问的对象,您必须使它们成为 class 的实例属性。
例如,您不会像示例中那样使用 global
。使用 global
在很大程度上违背了使用 class 的目的。相反,您可以这样做:
class SneakerGuide(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
self.stockXURLInput = Entry(sneakerBasicDetails)
self.stockXURLInput.grid(row=5, column=1)
要从条目中获取值,您所需要的只是对 class.
实例的引用root = tk.Tk()
...
guide = SneakerGuide(root)
...
print(f"The url is {guide.stockXURLInput.get9)}")
这不是 tkinter 独有的,这就是所有 python 对象的工作方式。