このホームページは Amazon Kindle 本の作成中の草稿です。日々、原稿を見直しているので、内容が変わることに留意して読んで下さい。本が出版され次第、このホームページは削除されます。
2.21 ウィンドウアイコン(wm_iconbitmap、iconbitmap、wm_iconphoto、iconphoto)
サブウィンドウのタイトルバーの左側のアイコンはメインウィンドウと同様にユーザが作成した画像に置き換えることができます。1.21 ウィンドウアイコンを参照して下さい。
次の 2 つのプログラムは、それぞれ「wm_iconbitmap」メソッドと「wm_iconphoto」メソッドでサブウィンドウアイコンを設定しています。アイコンは Python ロゴで、アプリケーションと同一のフォルダに python.ico ファイルおよび python.png ファイルとして保存しています。最初のプログラムでは「wm_iconbitmap」メソッドで直接 python.ico ファイルを指定しています。2 つめのプログラムでは python.png ファイルから PhotoImage クラスで tkinter フォトオブジェクトを作成しています。
import tkinter as tk | |
root = tk.Tk() | |
root.geometry('300x200+100+100') | |
sub = tk.Toplevel(root, width=300, height=200, bg='red') | |
sub.geometry('+140+120') | |
root.update() | |
root.wm_deiconify() | |
sub.wm_deiconify() | |
sub.wm_iconbitmap('python.ico') | |
root.mainloop() |
import tkinter as tk | |
root = tk.Tk() | |
root.geometry('300x200+100+100') | |
sub = tk.Toplevel(root, width=300, height=200, bg='red') | |
sub.geometry('+140+120') | |
root.update() | |
root.wm_deiconify() | |
sub.wm_deiconify() | |
photo = tk.PhotoImage(file='python.png') | |
sub.iconphoto(False, photo) | |
root.mainloop() |
上の 2 つのプログラムを実行すると、それぞれ、サブウィンドウのタイトルバーの左側のウィンドウアイコンに指定した画像を持つ下図のウィンドウが表示されます。