Почему нельзя показать изображение в переменной класса?питон ткинтер холст - PullRequest
0 голосов
/ 16 февраля 2019

Я пишу графическое программирование на python3.7.1.

, когда я использую python tkinter canvas, я считаю не показывать изображение.

Я использую переменную класса для переменной изображения, но она не может работать,поэтому я использую переменную экземпляра, она может работать.

что отличается ??

import tkinter as tk
from PIL import Image,ImageTk

class img_canvas(tk.Frame):
    def __init__(self,master=None):
        tk.Frame.__init__(self,master)

        i = Image.open('./sample.png')
        w,h = i.size

        self.img_canvas1= tk.Canvas(self, width=w, height=h)
        self.img_canvas2 = tk.Canvas(self, width=w, height=h)


        tki = ImageTk.PhotoImage(i)
        self.tki = ImageTk.PhotoImage(i)

        self.img_canvas2.create_image(w/2,h/2,image=tki)
        self.img_canvas1.create_image(w/2,h/2,image=self.tki)

        self.img_canvas1.pack()
        self.img_canvas2.pack()

exec result

пожалуйста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...