我在Python中创建了一个Tkinter GUI。以下代码段显示了应用程序启动时如何将其图标更改为icon.gif中的图标。这适用于Ubuntu和Windows,但它似乎没有在Mac上做任何事情。如果它有助于我在OS X 10.9.5上使用Tcl 8.5&amp ;;运行Python 2.7.10 Tk 8.5(8.5.18)。如何更改停靠栏中显示的图标?
import Tkinter as TK
class MyClass(object):
def __init__(self, root):
pass
if __name__ == '__main__':
root = TK.Tk()
my_app = MyApp(root)
icon_path = 'some\long\path\to\icon.gif'
img = TK.PhotoImage(file=icon_path)
root.tk.call('wm', 'iconphoto', root._w, img)
root.mainloop()
root.destroy()
答案 0 :(得分:3)
我知道这已经过时了,但我在来到这里之前就已经看到了答案,我想我会分享答案,以防万一将来发现这件事,并想知道。
您必须提供.icns
格式的图标文件,以便您的应用拥有应用程序图标。 py2app
有三种方法可以做到这一点:
在以下所有情况下,将app.icns替换为所需.icns文件的完整路径
$ python setup.py py2app --iconfile app.icns
from setuptools import setup
APP = ['YourApp.py']
APP_NAME = "YourApp"
DATA_FILES = []
OPTIONS = {
'argv_emulation': True,
'iconfile': 'app.icns',
}
setup(
name=APP_NAME,
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
老实说我不确定这个,我不接触.cfg文件
[py2app]
iconfile="app.icns"
以下是相关的relevant documentation。还可以使用practical example。
答案 1 :(得分:1)