Как вставить картинку в Tkinter через Pillow (PIL)
Как вставить картинку в Tkinter?
Ответы (1 шт):
Автор решения: Sia Minutu
→ Ссылка
Прежде чем мы напишем код мы должны установить PIL (Pillow)
$ pip install Pillow
В коде есть все подробности - смотрим и разбираемся.
from tkinter import Tk, Canvas, Frame, BOTH, NW # Импортируем Tkinter модули
from PIL import Image, ImageTk # Импортируем Pillow
class Images(Frame):
def __init__(self):
super().__init__()
self.initUI() # Делаем оболочку
def initUI(self):
self.master.title("Заголовок окна") # Заголовок окна
self.pack(fill=BOTH, expand=1)
self.img = Image.open("tatras.png") # В кавычках вписать название файла или полный путь
self.tatras = ImageTk.PhotoImage(self.img) # Вставляем изображение
canvas = Canvas( # Делаем доску для вставления изображения и прописываем необходимые атрибуты
self, width=self.img.size[0] + 20,
height=self.img.size[1] + 20
)
canvas.create_image(10, 10, anchor=NW, image=self.tatras) # Создание изображения на холсте (доске)
canvas.pack(fill=BOTH, expand=1) # Тип Canvas (т.е. как она будет вставлена, размер и т.д.)
def main():
root = Tk()
ex = Images()
root.mainloop()
if __name__ == '__main__':
main()