在函數中建立時 Tkinter 影像不顯示
在 Tkinter 中,在函數中建立影像可能會導致影像不顯示。出現此問題的原因是引用影像(本例中為照片)的變數是函數內的局部變數。函數完成後,局部變數將被垃圾收集,並且對影像的引用將遺失。
要解決此問題,您需要在實例化函數的類別中儲存對影像的參考。這將確保圖像不會被垃圾收集,並在類別的整個生命週期中保持可訪問性。
例如,您可以如下修改程式碼:
class Test: def __init__(self, master): canvas = tkinter.Canvas(master) canvas.grid(row = 0, column = 0) self.photo = tkinter.PhotoImage(file = './test.gif') canvas.create_image(0, 0, image=self.photo)
透過指派照片變數self,我們正在建立一個實例變量,該變數將在Test 類別的整個生命週期中持續存在。
以上是為什麼在函數中創建我的 Tkinter 圖像時不顯示?的詳細內容。更多資訊請關注PHP中文網其他相關文章!