【发布时间】:2017-02-21 22:36:06
【问题描述】:
当我尝试在 add_command 构造函数中分配一个带有参数的函数时,该函数会在菜单启动时执行。
所以我的问题是:有没有办法取消“每个菜单项一个功能”?就像在一个完整的菜单中一样,它会增加一个大修。
#!/usr/bin/python2.7
import os
from Tkinter import *
def runCommand(app):
os.system(app + " &")
def runBrowser():
app = "firefox"
runCommand(app)
def runTerminal():
app = "terminology"
runCommand(app)
def runFileManager():
app = "xfe"
runCommand(app)
def runEditor():
app = "atom"
runCommand(app)
root = Tk()
root.title("Root Menu")
menubar=Menu(root)
appsmenu=Menu(menubar)
menubar.add_cascade(label="Root Menu", menu=appsmenu)
appsmenu.add_command(label="Terminal", command=runTerminal)
appsmenu.add_command(label="Editor", command=runEditor)
appsmenu.add_command(label="File Manager", command=runFileManager)
appsmenu.add_command(label="Browser", command=runBrowser)
appsmenu.add_separator()
appsmenu.add_command(label="Close Menu", command=root.quit)
root.config(menu=menubar)
root.mainloop()
【问题讨论】:
-
在此处发布您的代码的最小示例。