python tkinter 无法显示图片

fromTkinterimport*root=Tk()canvas=Canvas(root)#lab=Label(root,bg='red')icon=r'C:\User... from Tkinter import *
root = Tk()
canvas = Canvas(root)
#lab = Label(root,bg='red')
icon =r'C:\Users\zhx\Pictures\11.jpg'
gif1 = PhotoImage(icon)
canvas.create_image(0, 0, image = gif1)
#lab.config(image = icon)
canvas.pack()
#lab.pack()
root.mainloop()
用canvas和label都试了一下总是报错
>>>
Traceback (most recent call last):
File "<string>", line 254, in run_nodebug
File "E:\python\w\test1.py", line 17, in <module>
canvas.create_image(0, 0, image = gif1)
File "D:\python27\Lib\lib-tk\Tkinter.py", line 2260, in create_image
return self._create('image', args, kw)
File "D:\python27\Lib\lib-tk\Tkinter.py", line 2251, in _create
*(args + self._options(cnf, kw))))
_tkinter.TclError: image "C:\Users\zhx\Pictures\11.jpg" doesn't exist
可是这个文件是一定存在的,我确认了多次,,,网上部分资料说是python把生成的图像当垃圾回收了,可总得有办法显示把,要不这个属性还有啥用,望大神指点
展开
 我来答
yycgis
推荐于2016-06-28 · TA获得超过8267个赞
知道大有可为答主
回答量:6831
采纳率:63%
帮助的人:1575万
展开全部

试试这个:

from Tkinter import *
filename = r"C:\Users\Administrator\Desktop\a.gif"
root = Tk()
img = PhotoImage(file=filename)
label = Label(root, text="hello",image=img)
label.pack()
root.mainloop()

图片一定要是.gif格式的!!

更多追问追答
追问

结果确实可行,但硬性的把jpg文件改为gif后不可用,,并且在python自带的IDLE里可以,但放到pyscripter里就报错

追答
没用过这个编辑器!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式