91765


tkinterライブラリのGUI作成手順において、ウィンドウのアイコンを設定するとき、  
アイコンの指定を２回記述すると画像読み込みエラーになるのは何がいけないのでしょうか。  
普通２回指定するなという話なのはそうなのですが、ビルドは通ったうえで取り込み失敗になります。  
エラーコードが出ないので何が理由なのかいまいちつかめていないです。

※icon.icoは相対パスでディレクトリ直下に存在し、アナコンダプロンプトで実行する際はcd設定でディレクトリ直下を参照しています。

[code]

    #正常な例
    import tkinter as tk
    root = tk.Tk()
    root.title('ウィンドウ名')        
    root.geometry('300x200')
    root.iconbitmap(default='icon.ico')
    root.mainloop()
    
    #だめな例
    import tkinter as tk
    root = tk.Tk()
    root.title('ウィンドウ名')        
    root.geometry('300x200')
    root.iconbitmap(default='icon.ico')
    root.iconbitmap(default='icon.ico')
    root.mainloop()
    
[/code]

[![画像の説明をここに入力](https://i.stack.imgur.com/sLjoX.png)](https://i.stack.imgur.com/sLjoX.png)

2022/10/24追記  
ご提案いただいた内容のなかで正常に実行できたパターンのソースコードを追記します。

[code]

    #成功例１
    import tkinter as tk
    root = tk.Tk()
    root.title('ウィンドウ名')        
    root.geometry('300x200')
    root.tk.call('wm', 'iconphoto', root._w, tk.PhotoImage(file='icon.png'))
    root.tk.call('wm', 'iconphoto', root._w, tk.PhotoImage(file='icon.png'))
    root.mainloop()
    
    #成功例２
    import tkinter as tk
    root = tk.Tk()
    root.title('ウィンドウ名')        
    root.geometry('300x200')
    root.iconphoto(False, tk.PhotoImage(file='icon.png'))
    root.iconphoto(False, tk.PhotoImage(file='icon.png'))
    root.mainloop()
    
[/code]


CC BY-SA 4.0
2022-10-23T10:39:58.797
91763
2022-10-24T04:13:52.940
2022-10-24T04:13:52.940
51823
51823
question
python tkinter
Python TkinterのGUIを作成するとき、アイコン画像の設定を２回行うと正しくアイコンファイルが読み込めなくなる


調べてみた所、Tkinterでも複数のアイコン設定方法が存在するようです。  
もしかしたら以下のリンクの方法で改善するかもしれません。  
・[www.delftstack.com](https://www.delftstack.com/ja/howto/python-tkinter/how-
to-set-window-icon-in-tkinter/)  
・[Stackoverflow.com(英語)](https://stackoverflow.com/questions/9929479/embed-
icon-in-python-
script?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa)


CC BY-SA 4.0
2022-10-23T11:59:21.580
91765
2022-10-23T11:59:21.580
54864
91763
answer