在 Mac OS 上使用 Rumps python 为菜单项创建子菜单
Creating Sub Menu for Menu item using Rumps python on Mac OS
我从这个问题中得到了这个示例代码
@rumps.clicked("About")
def about(sender):
rumps.alert("This is a cool app!")
@rumps.clicked("Preferences")
def about(sender):
rumps.alert("This is a cool app's settings!")
app = rumps.App("My Toolbar App", title='World, Hello')
app.menu = [
rumps.MenuItem('About', icon='pony.jpg', dimensions=(18, 18)),
'Preferences',
]
app.run()
如何使用 "About Me"、"About the Project" 等值为“关于”菜单项创建子菜单?
向 rumps
添加子菜单非常简单 — 只需将父菜单和子项括在方括号中即可 []
:
app.menu = [
[rumps.MenuItem("About", icon='pony.jpg', dimensions=(18, 18)),
[rumps.MenuItem("About Me"), rumps.MenuItem("About Project"),
rumps.MenuItem("etc...")]],
None,
rumps.MenuItem('Preferences')
]
例如,如果您想为 etc...
添加另一个子菜单,您可以这样做:
app.menu = [
[rumps.MenuItem("About", 'icon='pony.jpg', dimensions=(18, 18)),
[rumps.MenuItem("About Me"), rumps.MenuItem("About Project"),
[rumps.MenuItem("etc..."),
[rumps.MenuItem("more!")]]]],
None,
rumps.MenuItem('Preferences')
]
子菜单项也可以使用类似 JSON
的语法,如果您的子菜单中有很多子菜单,这可能更容易管理:
app.menu = [
rumps.MenuItem('About', icon='pony.png', dimensions=(18, 18)),
'Preferences',
None, # separator
{'SubMenu':
{"Child Menu One": ["Item 1", "Item 2"],
"Child Menu Two": ["Item 1", rumps.MenuItem("Item 2")]}},
None
]
*None
acts as a separator and is entirely optional.
你可以找到一些 more examples here。
我从这个问题中得到了这个示例代码
@rumps.clicked("About")
def about(sender):
rumps.alert("This is a cool app!")
@rumps.clicked("Preferences")
def about(sender):
rumps.alert("This is a cool app's settings!")
app = rumps.App("My Toolbar App", title='World, Hello')
app.menu = [
rumps.MenuItem('About', icon='pony.jpg', dimensions=(18, 18)),
'Preferences',
]
app.run()
如何使用 "About Me"、"About the Project" 等值为“关于”菜单项创建子菜单?
向 rumps
添加子菜单非常简单 — 只需将父菜单和子项括在方括号中即可 []
:
app.menu = [
[rumps.MenuItem("About", icon='pony.jpg', dimensions=(18, 18)),
[rumps.MenuItem("About Me"), rumps.MenuItem("About Project"),
rumps.MenuItem("etc...")]],
None,
rumps.MenuItem('Preferences')
]
例如,如果您想为 etc...
添加另一个子菜单,您可以这样做:
app.menu = [
[rumps.MenuItem("About", 'icon='pony.jpg', dimensions=(18, 18)),
[rumps.MenuItem("About Me"), rumps.MenuItem("About Project"),
[rumps.MenuItem("etc..."),
[rumps.MenuItem("more!")]]]],
None,
rumps.MenuItem('Preferences')
]
子菜单项也可以使用类似 JSON
的语法,如果您的子菜单中有很多子菜单,这可能更容易管理:
app.menu = [
rumps.MenuItem('About', icon='pony.png', dimensions=(18, 18)),
'Preferences',
None, # separator
{'SubMenu':
{"Child Menu One": ["Item 1", "Item 2"],
"Child Menu Two": ["Item 1", rumps.MenuItem("Item 2")]}},
None
]
*
None
acts as a separator and is entirely optional.
你可以找到一些 more examples here。