Mã thực tế của bạn có thể trả về lỗi dựa trên định dạng của tệp path
trỏ đến. Điều đó đang được nói, một số định dạng hình ảnh như .gif, .pgm (và .png nếu tk.TkVersion> = 8.6) đã được hỗ trợ bởi lớp PhotoImage
.
Dưới đây là một ví dụ hiển thị:
hoặc nếu tk.TkVersion < 8.6
:
try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
except ImportError:
import Tkinter as tk
def download_images():
# In order to fetch the image online
try:
import urllib.request as url
except ImportError:
import urllib as url
url.urlretrieve("https://i.stack.imgur.com/IgD2r.png", "lenna.png")
url.urlretrieve("https://i.stack.imgur.com/sML82.gif", "lenna.gif")
if __name__ == '__main__':
download_images()
root = tk.Tk()
widget = tk.Label(root, compound='top')
widget.lenna_image_png = tk.PhotoImage(file="lenna.png")
widget.lenna_image_gif = tk.PhotoImage(file="lenna.gif")
try:
widget['text'] = "Lenna.png"
widget['image'] = widget.lenna_image_png
except:
widget['text'] = "Lenna.gif"
widget['image'] = widget.lenna_image_gif
widget.pack()
root.mainloop()
tôi khuyên bạn nên đọc cuốn sách "Python và Tkinter lập trình". Rất tốt cuốn sách, kỹ lưỡng. Bạn có thể tìm thấy chúng trên eBay với giá thấp hơn. Đó là giả sử bạn thực sự muốn sử dụng TKinter. Tôi khuyên bạn nên sử dụng Qt thay vì Tkinter mặc dù – frankliuao