Python中tkinter无法同时显示多个image的解决方法及pack与place解析

作者:ShineLee 时间:2021-05-10 10:23:47 

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)

结果

Python中tkinter无法同时显示多个image的解决方法及pack与place解析

本来红线处还有两幅图,总共三幅,但是现在只显示了最后一幅。

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)

Python中tkinter无法同时显示多个image的解决方法及pack与place解析

补充

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

标签:Python,tkinter,无法同时显示多个image,pack,place
0
投稿

猜你喜欢

  • Python3如何将源目录中的图片用MD5命名并可以设定目标目录

    2023-11-28 10:33:17
  • Python利用Pillow(PIL)库实现验证码图片的全过程

    2022-05-18 21:27:47
  • 使用cmd命令行窗口操作SqlServer的方法

    2012-07-21 14:24:06
  • python爬虫豆瓣网的模拟登录实现

    2023-07-08 20:28:08
  • 基于python图像处理API的使用示例

    2022-12-19 02:14:53
  • MySQL数据库的临时文件究竟储存在哪里

    2009-02-13 13:44:00
  • 详解字典树Trie结构及其Python代码实现

    2023-07-07 18:18:41
  • Python设计模式结构型代理模式

    2023-06-30 19:23:58
  • Python计算程序运行时间的方法

    2023-08-09 09:53:50
  • Python之requests的使用(二)

    2021-10-30 16:44:51
  • fso怎样判断一个盘上是否有文件

    2007-09-26 12:35:00
  • Python数据分析之Numpy库的使用详解

    2021-06-14 02:54:53
  • python中wordcloud安装的方法小结

    2022-07-11 04:29:44
  • 关于JS中二维数组的声明方法

    2023-08-24 17:39:42
  • Python中无限循环需要什么条件

    2023-03-28 09:05:14
  • Python tkinter实现的图片移动碰撞动画效果【附源码下载】

    2022-03-19 03:05:26
  • Python与AI分析时间序列数据

    2022-02-25 09:36:07
  • Python使用filetype精确判断文件类型

    2023-07-09 12:30:12
  • Python爬取国外天气预报网站的方法

    2022-02-22 00:39:07
  • Python自动化测试基础必备知识点总结

    2021-11-11 22:07:07
  • asp之家 网络编程 m.aspxhome.com