我试图用python和tkinter在屏幕上显示图像,但是当我运行它时,它会在PhotoImage对象中出错。 这是我的代码:
from tkinter import *
root = Tk()
photo = PhotoImage(file="devil.png")
label = Label(root, image=photo)
label.pack()
root.mainloop()
图像文件与.py文件位于同一文件夹中。
它给出了这个错误:
Traceback (most recent call last):
File "C:/Users/MyUsername/PycharmProjects/GUI test/home.py", line 5, in <module>
photo = PhotoImage(file="devil.png")
File "C:\Users\MyUsername\AppData\Local\Programs\Python\Python36-32\lib\tkinter\__init__.py", line 3542, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "C:\Users\MyUsername\AppData\Local\Programs\Python\Python36-32\lib\tkinter\__init__.py", line 3498, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: encountered an unsupported criticial chunk type "iDOT"
有谁知道如何解决这个问题?
答案 0 :(得分:2)
您正在使用的图像块类型&#39; iDOT&#39;不是已注册的PNG块。因此,您应该用合适的图像替换图像。