2017-04-14 30 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() 
相關問題