提问者:小点点

_TKINTER.TCLERROR:映像不存在


我知道这个问题已经被问得相当多了,但我还是想不出问题出在哪里:

我试着做一个简单的4个按钮的Tkinter窗口。 每一个都应该有一个背景图像。 当我尝试设置image=path+'image.png'时,我得到了以下信息:_tkinter.tclerror:image“C:/users/。。。/image.png”不存在。 奇怪的是,当我从消息中复制路径并将其粘贴到Explorer adress行时,它会打开我想要作为背景图像的图像。

下面是必要的代码:

import tkinter

global path
path = 'C:/Users/Michael Hofmann/.../kahoot' 

root = tkinter.Tk()
Button_red = tkinter.Button(root, image=path+'/images/red_small.png', command= pressed('red'))

提前谢谢!


共2个答案

匿名用户

错误是告诉您一个图像对象不以该名称存在,而不是一个文件不以该名称存在。 image选项需要一个类型为Tkinter.PhotoImage的对象。 你不能只给它一个图像的路径。

image = tkinter.PhotoImage(file=path+'/images/red_small.png')
Button_red = tkitner.Button(..., image=image)

匿名用户

我认为您的图像应该是image-object,为此请先安装pillow包并导入ImageTKimage。 那么:

import tkinter
from PIL import ImageTk, Image


root = tkinter.Tk()

photo = ImageTk.PhotoImage(Image.open("./image.png"))

Button_red = tkinter.Button(root, width="100", height="100")
Button_red.config(image=photo)
Button_red.grid(column=1, row=3, sticky=tkinter.W)

root.mainloop()

config方法中为按钮指定图像对象。