self.tk.call(('image', 'create', imgtype, name,) + options) _tkinter.TclError: couldn't recognize data in image file "image1.png" - Unable to load png
self.tk.call(('image', 'create', imgtype, name,) + options) _tkinter.TclError: couldn't recognize data in image file "image1.png" - Unable to load png
我正在尝试使用 Python 和 Tkinter 制作一个应用程序,但我无法加载图像,具体来说是 png。相反,我收到了这么长的错误:
File "C:\Users\username\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 4038, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: couldn't recognize data in image file "image1.png".
有人可以帮我解决这个问题吗?以下是可能导致错误的代码行:
cycle1IMG = tk.PhotoImage(file="image1.png")
def openNewWindow1():
newWindow = Toplevel(master)
newWindow.title("Cycle 1")
newWindow.geometry("750x500")
Label(newWindow, text="Cycle 1", image= cycle1IMG).pack()
cycle1 =tk.Button(
root,
text="Cycle 1",
command=openNewWindow1
)
cycle1.place(x=500,y=300)
根据对该问题的评论,您似乎使用了一个 .webp 文件并将其重命名为 .png。这不会更改文件的内部内容,这就是 tkinter 报告错误的原因:你告诉它打开一个 .png 文件,但文件的内容不是 png 格式。
Tkinter 不支持 webp。您必须使用其他一些库来读取文件并将其转换为 tkinter 支持的格式(例如:pillow)
我正在尝试使用 Python 和 Tkinter 制作一个应用程序,但我无法加载图像,具体来说是 png。相反,我收到了这么长的错误:
File "C:\Users\username\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 4038, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: couldn't recognize data in image file "image1.png".
有人可以帮我解决这个问题吗?以下是可能导致错误的代码行:
cycle1IMG = tk.PhotoImage(file="image1.png")
def openNewWindow1():
newWindow = Toplevel(master)
newWindow.title("Cycle 1")
newWindow.geometry("750x500")
Label(newWindow, text="Cycle 1", image= cycle1IMG).pack()
cycle1 =tk.Button(
root,
text="Cycle 1",
command=openNewWindow1
)
cycle1.place(x=500,y=300)
根据对该问题的评论,您似乎使用了一个 .webp 文件并将其重命名为 .png。这不会更改文件的内部内容,这就是 tkinter 报告错误的原因:你告诉它打开一个 .png 文件,但文件的内容不是 png 格式。
Tkinter 不支持 webp。您必须使用其他一些库来读取文件并将其转换为 tkinter 支持的格式(例如:pillow)