4

Python Tk パッケージで構築された GUI アプリケーションにイメージを設定したいと考えています。

私はこのコードを試しました:

root.iconbitmap('window.xbm')

しかし、それは私にこれを与えます:

root.iconbitmap('window.xbm')
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1567, in wm_iconbitmap
    return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "window.xbm" not defined

誰でも助けることができますか?

4

3 に答える 3

15

を使用しますwm iconphoto。Python Tkinter よりも Tcl/Tk に慣れているため、それがどのように公開されるかはわかりませんが (おそらくroot.iconphoto) tkimage、. Tcl/Tk:

image create photo applicationIcon -file application_icon.png
wm iconphoto . -default applicationIcon

Tk 8.6 では、PNG ファイルを提供できます。その前に、PNG をサポートするために TkImg 拡張機能を使用するか、GIF を使用する必要があります。ただし、Python PIL パッケージは画像を TkImage オブジェクトに変換できるので、役立つはずです。

編集

Pythonでもこれを試してみたところ、次のように機能しました。

import Tkinter
from Tkinter import Tk
root = Tk()
img = Tkinter.Image("photo", file="appicon.gif")
root.tk.call('wm','iconphoto',root._w,img)

これを Ubuntu で対話的に行うと、アプリケーション アイコン (フレームの左上にあり、タスクバーに表示される画像) が、提供された gif 画像を使用するように変更されました。

于 2013-04-18T11:37:58.523 に答える