2014-09-12 46 views
-1

我想使用函數(如gotofirst選項卡)將菜單項綁定到筆記本框架。 例如一個菜單:帶有3個項目的文件,如果我點擊菜單文件中的第3個項目,應該選擇筆記本中的第3個選項卡,或者應該選擇第3個選項卡,同時看不到其他選項卡(隱藏或禁用它們)。綁定菜單項到Python中的筆記本選項卡

from tkinter import * 
from tkinter import ttk 

### defining functions ### 

def GotoFirst(): 
    pass 

def Gotosecond(): 
    pass 

def Gotothird(): 
    pass 

### Frame and notebook ### 

root = Tk() 
root.geometry('1000x700+1000+40') 
root.resizable(FALSE,FALSE) 
root.rowconfigure(0,weight=1) 
root.columnconfigure(0,weight=1) 
root.title("Test Fieldbook") 




fieldbook = ttk.Notebook(root) 
f1 = ttk.Frame(fieldbook); 
f2 = ttk.Frame(fieldbook); 
f3 = ttk.Frame(fieldbook); 

fieldbook.add(f1, text="1st") 
fieldbook.add(f2, text="2nd") 
fieldbook.add(f3, text="3rd") 

fieldbook.grid(row=0, column=0, sticky=(N,W,S,E)) 

### Creating menu bar ### 
menubar=Menu(root) 



filemenu=Menu(menubar) 
filemenu.add_command(label="Help Docs",command=GotoFirst) 
filemenu.add_command(label="About ESB",command=Gotosecond) 
filemenu.add_command(label="About ESB",command=Gotothird) 

menubar.add_cascade(label="Help",menu=filemenu) 
root.config(menu=menubar) 

root.mainloop() 

回答

0

謝謝你的提示,我設法使它工作。

fieldbook.tab(f1, state='normal') 
fieldbook.select(f1) 
fieldbook.hide(f3) 

與.TAB()我可以改變的狀態,因爲我想與.hide()我可以做一個特定的標籤消失瞬間,並用。新增隨時打電話回()

0

可以使用select方法:

fieldbook.select(0) 

fieldbook.select(f1) 

做同樣的事情。

+0

我曾嘗試選擇方法,它不會選擇禁用的選項卡,我需要選擇並能夠更改任何選項卡的狀態。你知道任何方法嗎? – Gael 2014-09-13 13:54:06