我想使用函数将一个菜单项绑定到笔记本框架(如gotofirst选项卡)。 例如菜单:带有3个项目的文件,如果我点击菜单文件中的第3个项目,应选择笔记本中的第3个选项卡,或者它应该转到第3个选项卡,同时看不到其他选项卡(隐藏它们或禁用它们。)
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 :(得分:0)
您可以使用select
方法:
fieldbook.select(0)
和
fieldbook.select(f1)
做同样的事情。
答案 1 :(得分:0)
感谢您的提示,我设法让它发挥作用。
fieldbook.tab(f1, state='normal')
fieldbook.select(f1)
fieldbook.hide(f3)
使用.tab()我可以根据需要更改状态,并使用.hide()我可以使特定选项卡暂时消失并随时使用.add()
回调它