【发布时间】:2021-07-23 17:50:26
【问题描述】:
我有一个 tkinter 课程。我想访问类外输入字段的值。我尝试通过创建一个函数来做到这一点,但它打印的是地址而不是值。 这是我的代码
class first:
def __init__(self, root):
self.root = root
self.root.title('First window')
self.root.geometry('1350x700+0+0')
self.mystring = tkinter.StringVar(self.root)
self.txt_id = Entry(self.root, textvariable=self.mystring, font=("Times New Roman", 14), bg='white')
self.txt_id.place(x=200, y=400, width=280)
btn_search = Button(self.root, command=self.get_id)
btn_search.place(x=100, y=150, width=220, height=35)
def get_id(self):
print(self.mystring.get())
return self.mystring.get()
print(get_id)
print(first.get_id)
我通过调用first.get_id 得到的输出是
【问题讨论】:
-
我们无法运行您的代码,这不是一个最小的完整示例。
-
您需要创建类的实例才能访问其实例变量或函数,但它们是类变量和函数。
-
你没有打电话
first.get_id,你正在查找它。即使这样,您也必须/应该调用实例上的方法,而不是类。 -
你的意思是@MisterMiyagi
value = first id_value=value.get_id print(id_value)。它正在打印同样的东西。 -
@acw1668 你能告诉我怎么做吗?我正在这样做,但没有得到想要的价值。
标签: python tkinter methods class-method python-class