2017-04-14 52 views
1

我想知道如何遗忘一个小工具而不是另一个功能? 我的代码很安静。Tkinter遗忘在另一个功能内制作的小工具

def page2(cur1): 
    label2 = Label(root, text="How much would you like to convert?") 
    entry1 = Entry(root) 
    buttonSubmit = Button(root, text="Submit", command=lambda: get_entry(entry1, cur1)) 

    label2.grid(row=1, columnspan=5) 
    entry1.grid(row=2, sticky="w") 
    buttonSubmit.grid(row=2, column=1) 

我希望能够忘记从另一个功能这些小部件,像这样:提前

def forget(): 
    label2.grid_forget() 
    entry1.grid_forget() 

感谢。

+0

你是什么意思“忘记”?你想达到什么目的?只要将它们从视图中移除,以便稍后让它们出现,或者是否想要实际销毁它们? –

回答

3

如果你发现自己需要这么多,你应该re-structure your program using classes

您可以将窗口小部件的创建移动到全局范围,并在需要时将其忽略。

#create your widgets in global scope so you can reach them in any function 
label2 = Label(root, text="How much would you like to convert?") 
entry1 = Entry(root) 

def page2(cur1): 
    buttonSubmit = Button(root, text="Submit", command=lambda: get_entry(entry1, cur1)) 

    label2.grid(row=1, columnspan=5) 
    entry1.grid(row=2, sticky="w") 
    buttonSubmit.grid(row=2, column=1) 

def forget(): 
    label2.grid_forget() 
    entry1.grid_forget() 
相关问题