質問: tk.Canvas(bg="black", width=796, height=816) canvas.place(x=0, y=0) self.back_ground=canvas.create_image(0, 0, image=self.belt_foto, anchor=tk.NW) self.Move_BackGround() root.mainloop() def Move_BackGround(self): self.back_ground["image"]=self.img002 ``` ### 発生している問題・エラーメッセージ ``` self.back_ground["image"]=self.img002 TypeError: 'int' object does not support item assignment ``` 実行すると、タイプエラーと表示されて画像差し替え出来ず・・・ ### 試したこと 試しにprint(type())で、self.back_groundを調べたらなんとint型だと表示されました。 なので変更できないと・・・ tkinterのLabelなら、 ラベル変数名["text"]=..... で、内容を変えられるのですが・・・何故Canvasはダメなのでしょうか? 何故Canvas変数?の型はintなのでしょうか? 画像差し替え方法が全く想像つきません(-_-;)
回答: 画像を差し替えるには以下を参考に`canvas.itemconfig`を利用すればできます。 参考:How to update an image on a Canvas?