2013-07-16 144 views
0

我正在嘗試使Tkinter菜單像一個任務欄檢查器。 所以如果我去這個菜單並選中一個框,我的窗口上會出現一個特定的按鈕,然後用戶可以根據他們想要的選擇來選擇多個按鈕。Tkinter菜單和按鈕

該程序只是一些按鈕,在我的文本字段中輸入文本後,點擊按鈕,Web瀏覽器啓動搜索該按鈕鏈接到的網站。

如何製作上述的菜單?

編輯:

我只是試着基本菜單的東西:

buttonmenu = Menu(menubar, tearoff=0) 
buttonmenu.add_command(label="button1", command=turnbuttononoff) 
buttonmenu.add_command(label="button2", command=turnbuttononoff) 
buttonmenu.add_command(label="button3", command=turnbuttononoff) 
buttonmenu.add_command(label="button4", command=turnbuttononoff) 
buttonmenu.add_command(label="button5", command=turnbuttononoff) 

這只是創建了一個基本的菜單。如果我可以有一個觸發按鈕打開或關閉的功能,那就太棒了。

所以基本上只是一個函數來被證明不被顯示換一個按鈕

def turnbuttononoff(): 
    #togglebutton here 

答: 我做在那裏被存儲在每個按鈕的數據字典,然後檢查是否該按鈕處於活動狀態,如果是,則將其關閉,如果該按鈕處於非活動狀態,則將其關閉。 爲每個按鈕設置一個命令lambda函數。

def Toggle_Button(myButton): 
if myButton.winfo_ismapped()==1: 
    myButton.grid_forget() 
else: 
    myButton.grid(row=gridData[myButton][0],column=gridData[myButton][1]) 
+1

你讓我們爲你寫代碼,還是有一些你不明白的menubutton或菜單的具體內容? –

+0

我想要一些代碼,但實際上我不知道如何讓按鈕由於用戶輸入而出現/消失。 – KevinShaffer

+0

我們可以幫助Tkinter的問題,但像@BryanOakley暗示,我不會爲你寫代碼。你有什麼嘗試? – Fiver

回答

0
gridData = {} 
gridData[button] = [row,col] 


def Toggle_Button(myButton): 
    if myButton.winfo_ismapped()==1: 
    myButton.grid_forget() 
else: 
    myButton.grid(row=gridData[myButton][0],column=gridData[myButton][1]) 

如果你已經在網格上的按鈕,使用button.grid_info找到你需要的東西,它返回一個字典。