我正在使用python和Qt编写GUI应用程序.当我在Mac上启动我的应用程序时,屏幕顶部Mac菜单栏中的第一个菜单项是"Python".我更喜欢那里的应用程序名称是我的应用程序的名称.我怎样才能获得我的程序名称?
以下演示程序创建了一个包含两个菜单的窗口:"Python"和"Foo".我不喜欢这样,因为无论我是用python还是COBOL编写应用程序,我的用户都没有区别.相反,我想要菜单"MyApp"和"Foo".
#!/usr/bin/python
# This example demonstrates unwanted "Python"
# application menu name on Mac.
# Makes no difference whether we use PySide or PyQt4
from PySide.QtGui import *
# from PyQt4.QtGui import *
import sys
app = QApplication(sys.argv)
# Mac menubar application menu is always "Python".
# I want "DesiredAppTitle" instead.
# setApplicationName() does not affect Mac menu bar.
app.setApplicationName("DesiredAppTitle")
win = QMainWindow()
# need None parent for menubar on Mac to get custom menus at all
mbar = …
Run Code Online (Sandbox Code Playgroud) 我想创建一个简单的Mac应用程序包,它调用一个简单的Python脚本.我想用Python做到这一点.
有一个简单的方法吗?
我尝试使用py2app,但不知怎的失败,例如:
from setuptools import setup
setup(app=["foo.py"], setup_requires=["py2app"])
Run Code Online (Sandbox Code Playgroud)
得到:
---------------------------------------------------------------------------
SystemExit Traceback (most recent call last)
/Users/az/<ipython console> in <module>()
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.pyc in setup(**attrs)
138 ok = dist.parse_command_line()
139 except DistutilsArgError, msg:
--> 140 raise SystemExit, gen_usage(dist.script_name) + "\nerror: %s" % msg
141
142 if DEBUG:
SystemExit: usage: ipython [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: ipython --help [cmd1 cmd2 ...]
or: ipython --help-commands
or: ipython cmd --help
error: no commands supplied
Type %exit or %quit to exit IPython (%Exit …
Run Code Online (Sandbox Code Playgroud)