Я новичок в программировании GUI python, я хочу добавить изображение в свою метку tkinter, я создал следующий код, но окно не показывает мое изображение. Путь изображения - это та же папка, что и этот код.Изображение в этикетке Tkinter?
import ImageTk
import Tkinter as tk
from Tkinter import *
from PIL import Image
def make_label(master, x, y, w, h, img, *args, **kwargs):
f = Frame(master, height = h, width = w)
f.pack_propagate(0)
f.place(x = x, y = y)
label = Label(f, image = img, *args, **kwargs)
label.pack(fill = BOTH, expand = 1)
return label
if __name__ == '__main__':
root = tk.Tk()
frame = tk.Frame(root, width=400, height=600, background='white')
frame.pack_propagate(0)
frame.pack()
img = ImageTk.PhotoImage(Image.open('logo.png'))
make_label(root, 0, 0, 400, 100, img)
root.mainloop()
Любая помощь будет оценена, спасибо.
Прекрасно работает для меня. Это ваш фактический код? Если нет, я бы предположил, что [изображение - сбор мусора] (http://stackoverflow.com/a/15435134/1639625). Вы получаете какую-либо ошибку? –
Нет ошибки, просто пустое окно. – Shivamshaz
Как я уже сказал, отлично работает для меня ... так что если это ваш оригинальный код, может быть, ваш «logo.png» на самом деле намного больше, и вы видите только верхний левый (белый) угол его ? Кроме того, какую именно версию python вы используете? –