我正在尝试从tkinter窗口获取输入文本值的返回值,我希望返回这些文本值,以便捕获这些文本值并将其作为输入发送给其他类方法。
我能够打印那些捕获的值,但不能返回它们。我是python的新手
from tkinter import *
class gui_cls:
def __init__(self,*args):
self.master=args[0]
self.delete = StringVar()
self.insert = StringVar()
self.var1 = IntVar()
self.var3 = IntVar()
def vergui(self):
Delete = self.delete.get()
insertversions = self.insert.get()
prog = self.var1.get()
print(Delete)
print(insertversions)
if prog:
print("levels")
else:
pass
label_0 = Label(self.master, text="Adaptive", width=20, font=("bold", 20))
label_0.place(x=40, y=53)
label_1 = Label(self.master, text="Delete Versions", width=20, font=("bold", 10))
label_1.place(x=30, y=130)
entry_1 = Entry(root, textvar=self.delete)
entry_1.place(x=200, y=130)
label_2 = Label(self.master, text="Insert Versions", width=20, font=("bold", 10))
label_2.place(x=30, y=180)
entry_2 = Entry(self.master, textvar=self.insert)
entry_2.place(x=200, y=180)
label_3 = Label(self.master, text="Reload", width=20, font=("bold", 10))
label_3.place(x=30, y=230)
var2 = IntVar()
Checkbutton(self.master, text="Levels", padx=5, variable=self.var1).place(x=190, y=230)
Checkbutton(self.master, text="Accounts", padx=20, variable=var2).place(x=250, y=230)
label_4 = Label(self.master, text="Note: Please seperate versions by comma(,)", fg='red', font=("bold", 13)).place(x=30, y=280)
Button(self.master, text='Finish', width=20, bg='brown', fg='white', command=self.vergui).place(x=200, y=350)
root = Tk()
root.geometry('400x400')
root.title("Adaptive")
gui_cls(root).vergui()
root.mainloop()
答案 0 :(得分:1)
当前,您正在动态创建类的实例。您可以先为该类的实例定义一个变量,然后分别调用方法:
error: expected primary-expression before ‘.’ token
void f(treeNode* root, int &n, list<treeNode*> &path = list<treeNode*>.()){
然后您可以随时访问类属性。
#gui_cls(root).vergui()
gui = gui_cls(root)
gui.vergui()