如何指定py2app图标?

时间:2011-04-09 21:34:46

标签: python macos py2app

使用py2app时如何指定图标文件?

刚才我创建了安装文件:

py2applet --make-setup MyApplication.py

然后构建应用程序包:

 python setup.py py2app -A

我在哪里指定图标文件..有点困惑。谢谢你的帮助。

根据此链接 - http://packages.python.org/py2app/options.html,我应该将其添加为选项。

目前我的setup.py文件如下所示:

"""
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup

APP = ['hello.py']
DATA_FILES = ['chalkboard.jpg']
OPTIONS = {'argv_emulation': True,
'iconfile': '/Users/grahamethomson/Documents/College/HND/oop/game/personal       developoment/G/icon.icns'}

setup(
    app=APP,
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

3 个答案:

答案 0 :(得分:18)

在你的setup.py中,添加iconfile

"""
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup

APP = ['main.py']
DATA_FILES = []
OPTIONS = {
    'iconfile':'icon.icns',
    'plist': {'CFBundleShortVersionString':'0.1.0',}
}

setup(
    app=APP,
    name='MacApp',
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

答案 1 :(得分:5)

回答我自己的问题。

要添加图标文件,只需在创建setup.py时添加iconfile选项:

py2applet --make-setup foo.py --iconfile images/icon.icns

注意:您不得将icon.icns保留在与主脚本foo.py相同的文件夹下。它必须放在images/之类的子文件夹下,否则您DATA_FILE=['--iconfile']中的setup.py最终会失败,因为它不是数据文件。

答案 2 :(得分:0)

这些解决方案在 python3 上对我不起作用。 --iconfile 开关抛出关于找不到文件的错误。事实上,甚至不需要开关。这对我有用。

py2applet --make-setup MyApplication.py myicon.icns
python3 setup.py py2app

只需将图标放在与源代码相同的文件夹中,即可完成您想要的操作。在 py2applet help 中找到。