如何在Tkinter画布上更新图片?
Python中的PIL或Pillow软件包提供了一种处理程序中的图像的方法。我们可以打开图像,对图像进行不同的处理,并可以将其用于可视化数据。要在应用程序中显示图像,我们通常使用画布小部件。由于画布小部件提供了许多在应用程序中添加图像和对象的功能,因此我们可以使用它来显示图像。
要更改特定的图像,我们可以使用 itemconfig() 构造函数配置画布。它接受需要更新并在窗口中显示的图像文件。
示例
对于这个示例,使用三个您选择的图像并将其保存在同一项目目录中。
# 导入必需的库
from tkinter import *
from tkinter import ttk
from PIL import Image, ImageTk
# 创建 tkinter 窗体的实例
win=Tk()
# 设置窗体的尺寸
win.geometry("750x400")
# 定义更新图像的函数
def update_image():
canvas.itemconfig(image_container,image=img2)
# 创建画布并添加图像
canvas=Canvas(win, width=650, height=350)
canvas.pack()
# 创建更新画布图像的按钮
button=ttk.Button(win, text="更新", command=lambda:update_image())
button.pack()
# 在变量中打开一个图像
img1=PhotoImage(file="logo.png")
img2=PhotoImage(file="logo2.png")
img3=PhotoImage(file="logo3.png")
# 将图像添加到画布中
image_container=canvas.create_image(0,0, anchor="nw",image=img1)
win.mainloop()
输出
运行上述代码会显示一个带有画布和按钮的窗口,用于更新画布图片。
现在,单击“Update”按钮以更改图像。