如何设置带有URL的tkinter应用程序图标?

时间:2014-03-02 21:25:35

标签: python tkinter tk

如果我有:

from Tkinter import *
app = Tk()

...

app.mainloop()

我会使用app.iconbitmap(...)吗?

如果是这样,我将如何使用this作为文件,我应该导入urllib吗?

2 个答案:

答案 0 :(得分:1)

这是在Windows和Linux上都对我有用的电话。我发现我无法在Linux上使用ico文件,因此只能使用在两种平台上都可以使用的gif文件。

class Editor(tk.Tk):
   . . .
   . . . 
   self.tk.call('wm', 'iconphoto', self._w, tk.PhotoImage(file = "my_icon.gif"))

答案 1 :(得分:0)

您也可以使用此替换Tkinter默认图标。

import base64, PIL, urllib, Tkinter
from Tkinter import *
from PIL import ImageTk
from urllib import *

root = Tk()

raw_data = urllib.urlopen("http://dl.dropboxusercontent.com/s/qtlincxkbbiz1qv/stat.gif").read()

b64_data = base64.encodestring(raw_data)
image = PhotoImage(data=b64_data)

root.tk.call('wm', 'iconphoto', root._w, image)

root.mainloop()

然后将.py文件扩展名更改为.pyw以更改任务栏图标。

.pyw扩展程序告诉它使用pythonw.exe代替python.exe,但使用pythonw.exe运行也会使其在没有控制台的情况下运行。

因此,您必须在没有图标或没有控制台的情况下运行。