Python中tkinter无法同时显示多个image的解决方法及pack与place解析
作者:ShineLee 发布时间:2021-05-10 10:23:47
标签:Python,tkinter,无法同时显示多个image,pack,place
0、问题
在用Tkinter进行编程时,需要在一个Frame下显示多个图片,但是不管怎么设置都是只显示最后一张,就像这样:
代码
for i in range(3):
...
image=ImageTk.PhotoImage(f'img{i}.png')#分别打开img1,img2,img3并显示
Label(window, image=image, bg='green').place(x=60 + rw * i, y=500)
结果
本来红线处还有两幅图,总共三幅,但是现在只显示了最后一幅。
1、原因
在上述代码最后一行,我们这样写:
Label(window, image=image, bg='green').place(x=60 + rw * i, y=500)
在执行过程中,每个image变量会覆盖上一个image变量,导致运行过程中总是只有1个image参与了绘制,从而只显示一个image
2、解决
给不同的image分别命不同的名,或者干脆用一个List:
image=[]
for i in range(3):
...
image.append(ImageTk.PhotoImage(f'img{i}.png')
Label(window,image=image[i],bg='green').place(x=60+rw*i,y=500)
补充
pack与place是没有返回值的,所以在需要对要素进行后续操作时,不要直接将该要素的生成和放置写在同一句话中,就像这样:
Label(window, text='直方图:', font=('宋体', 16)).place(x=0, y=60)
最好分开写:
L1=Label(window, text='直方图:', font=('宋体', 16))
L1.place(x=0, y=60)
如果像一开始那样写L1=XXX.place(),那么最终得到的L1将是NoneType
来源:https://www.cnblogs.com/ShineLeBlog/p/15776945.html
0
投稿
猜你喜欢
- 本文实例讲述了flask框架视图函数用法。分享给大家供大家参考,具体如下:flask框架 视图函数当中 各种实用情况简单配置1 建立连接2
- Pandas之drop_duplicates:去除重复项方法DataFrame.drop_duplicates(subset=None, k
- 发现问题最近在将mysql升级到mysql 5.7后,进行一些group by 查询时,比如下面的SELECT *, count(id) a
- 前言前面介绍了Allure报告,本篇来学习普通的HTML如何展示在Jenkins上安装插件Manage Jenkins --> Man
- 今天在做编程题的时候发现Python的print输出默认换行输出,并且输出后有空格。题目要求输出122而我的输出是:122于是我百度查到取消
- 本文详细介绍了array_slice函数的详细用法以及一些常用的array_slice实例程序,分享给大家供大家参考。具体分析如下:arra
- 一、插件是什么?插件是遵循一定规范的应用程序接口编写出来的程序,而chrome插件则是运行在chrome浏览器上的小程序,能帮我们解决一下工
- 如何实现在下拉菜单里输入文字? 用这个代码试试看,应该可以的:<script>function pp(){se.opt
- 如下所示:希望可以从对admin提交的密码加密,并验证电话号码均为数字。查看admin.pyfrom django.contrib impo
- 在上一篇文章中实现了树莓派下对摄像头的调用,有兴趣的可以看一下:python+opencv实现摄像头调用的方法接下来,我们将使用python
- 先给大家说下我的项目需求:用户扫一扫二维码会产生一个链接,该链接会向后端发送个请求,返回一个 apk 的下载地址,用户点击下载按钮可以下载此
- 油画的实现原理油画简单的理解是带有艺术感的图像,色彩相对于原图要更加鲜艳,但却是失真的。而且对于喜欢欣赏艺术的读者,肯定或多或少关注过油画,
- 在网上找到的随机不重复查询代码:select top 15 * from article&
- 本文实例讲述了python获取指定目录下所有文件名列表的方法。分享给大家供大家参考。具体实现方法如下:这里python代码实现获取文件名列表
- python的数据类型有:数字(int)、浮点(float)、字符串(str),列表(list)、元组(tuple)、字典(dict)、集合
- 前言先前我们给出了遗传算法的解决方案,那么同样的我们,给出使用PSO的解决方案。其实对PSO算法比较了解的小伙伴应该是知道的,这个PSO其实
- 不使用int()函数的情况下把字符串转换为数字,如把字符串"12345"转换为数字12345。方法一:利用str函数既然
- 本文实例讲述了Python基于正则表达式实现检查文件内容的方法分享给大家供大家参考,具体如下:这个是之前就在学python,欣赏python
- 越来越觉得的缓存是计算机科学里最NB的发明(没有之一),本文就来介绍了一下在Python中使用AOP实现Redis缓存示例,小伙伴们一起来了
- 这篇文章主要介绍了python paramiko远程服务器终端操作过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参