最近在用tkinter做一个图形化的小游戏,我想在背景上加上图片,其中方法来自这篇文章。
因为要做页面间的跳转,我做的每个页面就是一个.py文件,这个py文件里包含了一个这个页面所属的类,所以我是在类里调用了上述文章中的方法,但是这时候图片不显示,但是上面的按钮会显示。
![tkinter中在canvas上背景图片不显示的问题 tkinter中在canvas上背景图片不显示的问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzY3MS9jMDBlMGU3Nzc3OGEyOTM3MTFiYWQyYjQ4MjIzZGI1Ny5wbmc=)
刚开始我以为是pack的顺序或者多线程的问题,后来折腾好久都没有解决,就放到一边了。
今天突然想起来,看到了这篇文章,才明白是是要把canvas.create_image(width,height,image = im)中的第三个参数image生命为全局变量的原因。
图源网络,侵删致歉。
![tkinter中在canvas上背景图片不显示的问题 tkinter中在canvas上背景图片不显示的问题](/default/index/img?u=aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzgzMi8zYjI1NmFjY2ZhODg5YWQ0NWRmYTAyYTg2ODZiNGIwMC5wbmc=)