我在这个层次结构中以编程方式在PyObjC中创建一个菜单。
NSMenu (setMainMenu on NSApplication)
- NSMenuItem(1)
- NSMenu: "App Name"
- NSMenuItem(1)
- NSMenuItem(2)
...
- NSMenuItem(2)
- NSMenu: "File"
- NSMenuItem(1)
- NSMenuItem(2)
...
- NSMenuItem(3)
- NSMenu: "Edit"
- NSMenuItem(1)
- NSMenuItem(2)
...
...
然而,所有PyObjC应用程序节目都是一个单独的“Python”菜单,其中包含应该位于“App Name”下的项目。
如何使其表现?
答案 0 :(得分:1)
“Python”菜单可能是Python.framework中隐藏的Python.app应用程序中MainMenu.nib的菜单。该应用程序可以在命令行脚本中使用GUI API,而无需使用私有API。
获得正确行为的最佳方法是通过py2app或手动创建应用程序包。