簡體   English   中英

Python ...在菜單選項選擇上隱藏小部件 - Tkinter

[英]Python… Hide widget upon menu option selection - Tkinter

使用Tkinter時,我試圖使標簽消失,當使用MenuOption()選擇特定選項時,另一個標簽出現在其位置。 我可以在不需要“刷新”按鈕的情況下完成此操作嗎?

更新了我的代碼示例:

mGui = Tk()
mGui.geometry('570x130+700+200')
mGui.resizable(width = FALSE, height = FALSE)
mGui.title('Title')


mylist = ['henry', 'tom', 'phil']
someValue = StringVar()

mLabel = Label(text = 'name:  ').grid(row = 0, column = 0, sticky = E)

someMenu = OptionMenu(mGui, someValue, *mylist)
someMenu.grid(row = 0, column = 1, sticky = W)
someMenu.config(width = 14, anchor = W)

mGui.mainloop()

所以,如果someMenu.get()=='tom'我想隱藏mLabel ...

所以我添加了以下內容:

def something():
        print someValue.get()

mylist = ['henry', 'tom', 'phil']
someValue = StringVar()
someValue.trace('w', something)

並且我得到TypeError:'NoneType'對象不可調用..嗯嗯

您可以在someValue跟蹤,可以在值發生變化時調用函數。 在該功能中,您可以執行任何操作,包括刪除小部件。

該網站有一個例子: http//effbot.org/tkinterbook/variable.htm

if someMenu.get == "tom":
    buttonName.pack()
else:
    buttonName.pack_forget()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM