栗悟饭便当 发表于 2021-5-15 05:04:29

我的tkinter canvas上始终无法显示图片且不报错

麻烦大佬们解答了!!
谢谢!!!!

栗悟饭便当 发表于 2021-5-15 05:38:02

而且尝试在canvas上画图形也不行。。

林小林 发表于 2021-5-15 06:01:59

本帖最后由 林小林 于 2021-5-15 06:10 编辑

import tkinter as tk

if __name__ == '__main__':
    window = tk.Tk()
    window.title('my window')
    window.geometry('1000x1000')


    canvas = tk.Canvas(window, bg ='green', height = 800, width = 800)
    canvas.pack()
    image_file = tk.PhotoImage(file='banana.gif')
    image = canvas.create_image(250, 250, anchor='n',image=image_file)

    window.mainloop()

我这样复制了一遍你的代码,没有问题,能显示。我把我的.m文件添加附件,你试一下?

栗悟饭便当 发表于 2021-5-15 19:22:10

林小林 发表于 2021-5-14 22:01
我这样复制了一遍你的代码,没有问题,能显示。我把我的.m文件添加附件,你试一下?

谢谢回复!我昨天又自查了一下,报错显示的是不能识别gif文件中的信息(_tkinter.TclError: couldn't recognize data in image file "pic.gif“),应该不是代码的问题。请问你知道识别文件的话tkinter是对这个gif有什么要求吗?(ps 我这个文件是jpg转gif,改了一下扩展名,不知道有没有这方面的因素,下附我的那张图,谢谢!)

林小林 发表于 2021-5-16 06:08:47

栗悟饭便当 发表于 2021-5-15 19:22
谢谢回复!我昨天又自查了一下,报错显示的是不能识别gif文件中的信息(_tkinter.TclError: couldn't rec ...

我试了一下,你给的这个图片确实不行……我也不清楚什么原因。但是我自己下载的图片,无论是png,jpg,还是gif,都可以。我把你的图片截图自己保存了一遍,也没有问题。不行你就换个图片试试吧。我把我用过的图片给你添加到附件了,你可以试试。

栗悟饭便当 发表于 2021-5-17 02:49:29

林小林 发表于 2021-5-15 22:08
我试了一下,你给的这个图片确实不行……我也不清楚什么原因。但是我自己下载的图片,无论是png,jpg,还是 ...

谢谢回复!可能跟电脑配置也有关系,我用你先前的文件homework-help.py试了试你的图片,然后只有第一个banana.gif能够正常显示,其他仍显示cannot recognise data。然后用我的代码跑的话还是一张图都不行而且也不报错。我的代码和你的唯一的区别就在于“if __name__ == '__main__':”,请问这一句是干什么用的呢?

林小林 发表于 2021-5-19 00:32:48

栗悟饭便当 发表于 2021-5-17 02:49
谢谢回复!可能跟电脑配置也有关系,我用你先前的文件homework-help.py试了试你的图片,然后只有第一个ba ...

“if __name__ == '__main__':” 这句话就是一个条件句。意思时只有运行这个文件,才会运行里面的代码。如果是从别的.m文件调运这个文件,不会运行条件里面的代码

栗悟饭便当 发表于 2021-5-19 20:40:11

林小林 发表于 2021-5-18 16:32
“if __name__ == '__main__':” 这句话就是一个条件句。意思时只有运行这个文件,才会运行里面的代码。 ...

哦哦哦!谢谢你耐心回复!
页: [1]
查看完整版本: 我的tkinter canvas上始终无法显示图片且不报错