クラス内の関数で作成した場合、Tkinter イメージが表示されないのはなぜですか?
Tkinter では、関数内でイメージを作成すると画像を表示しません。この現象は、コード例では photo として示されている画像を参照する変数が、関数の実行完了後にガベージ コレクションされるローカル変数であるために発生します。
この問題に対処するには、クラスの属性としてのイメージ インスタンスへの参照。これは、
self.photo = tkinter.PhotoImage(...)
のような行を使用して実現できます。ここで、self は Test クラスのインスタンスを参照します。これにより、クラスの存続期間中は変数写真が利用可能な状態に保たれ、画像を表示できるようになります。
以上がクラス関数内で作成したときに Tkinter イメージが表示されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。