61358


他のURLを見て自己解決したのですが、知識共有のため投稿します。

私自身の以下リンクの質問内容に関連しています。  
親のダイアログから新しくTK()インスタンスを生成してカスタムメッセージボックスを作っています。  
このダイアログにPILモジュールのPhotoImageメソッドで任意の画像を扱おうとすると、このようなエラーが表示されます。

[code]

    _tkinter.TclError: image "pyimage##" doesn't exist
    
[/code]

[Python
Tkでカスタムメッセージボックスを作りたい](https://ja.stackoverflow.com/questions/61331/python-
tk%E3%81%A7%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%83%9C%E3%83%83%E3%82%AF%E3%82%B9%E3%82%92%E4%BD%9C%E3%82%8A%E3%81%9F%E3%81%84/61340#61340)


CC BY-SA 4.0
2019-12-12T02:05:06.543
61357
2019-12-12T02:05:06.543
32891
question
python3 画像 tkinter
Python tk　複数のTK()インスタンスで画像を扱う方法


この問題は、参考URLに記載のある通りですが、  
PhotoImageメソッドが最初に生成されたTk()インスタンスに対して、画像を生成するために発生するということです。  
PhotoImageメソッドのmsaterオプションで、インタンスを明示的に指定することで解決しました。

[code]

    root = Tk()
    img = PhotoImage(temp_img,master = root)
    
[/code]

参考のURLはこちら  
[Python+Tkinterの複数ウィンドウ生成時エラー](https://teratail.com/questions/100184)


CC BY-SA 4.0
2019-12-12T02:05:06.543
61358
2019-12-12T02:05:06.543
32891
61357
answer