【发布时间】:2021-06-29 22:32:24
【问题描述】:
我正在使用类实现我的第一个 Tkinter UI,但我的 Entry 的 getter 和 setter 遇到了一些问题。
当我试图读取“N”的值时,即self.nameVar.get(),它什么也不打印...
谁能指出我正确的方向?
非常感谢!
### Class PopUpScreen
class popUpScreen():
def __init__(self, newContact=True):
self.root2 = Tk()
self.root2.title('New Contact')
self.root2.resizable(False, False)
self.newContact = newContact
### Var
**self.nameVar = StringVar()**
### Widget
# Entry
self.entryFirstName = Entry(self.root2, **textvariable=self.nameVar**)
# Button
btnSave = ttk.Button(self.root2, text="Save", default="active", command=self.callbackSave).grid(row=9, column=3)
### Grid
# Entry
self.entryFirstName.grid(row=2, column=2, columnspan=2)
# Loop
self.root2.mainloop()
def callbackSave(self):
n = **self.nameVar.get()**
print('N value: ', n)
messagebox.showinfo( "Saving...", n))
self.root2.destroy()
### End Popup Contact class
【问题讨论】:
-
也许
StringVar(master=self.root2)
标签: python class user-interface tkinter