如何在 Tkinter 中将背景图像调整为窗口大小?
为了处理图像,Python 库提供 Pillow 或 PIL 包,使应用程序能够导入图像并对其执行各种操作。
让我们假设我们想动态地将图像大小调整到它的窗口。在这种情况下,我们必须遵循以下步骤 -
在 Tkinter 应用程序中打开图像。
创建一个 Canvas Widget 并使用create_image(**options)将加载的图像放置在画布中。
定义一个函数来调整加载的图像的大小。
将函数与父窗口配置绑定。
示例
# Import the required librariesfrom tkinter import *
from PIL import ImageTk, Image
# Create an instance of Tkinter Frame
win = Tk()
# Set the geometry of Tkinter Frame
win.geometry("700x450")
# Open the Image File
bg = ImageTk.PhotoImage(file="nhooo.png")
# Create a Canvas
canvas = Canvas(win, width=700, height=3500)
canvas.pack(fill=BOTH, expand=True)
# Add Image inside the Canvas
canvas.create_image(0, 0, image=bg, anchor='nw')
# Function to resize the window
def resize_image(e):
global image, resized, image2
# open image to resize it
image = Image.open("nhooo.png")
# resize the image with width and height of root
resized = image.resize((e.width, e.height), Image.ANTIALIAS)
image2 = ImageTk.PhotoImage(resized)
canvas.create_image(0, 0, image=image2, anchor='nw')
# Bind the function to configure the parent window
win.bind("<Configure>", resize_image)
win.mainloop()
输出结果
运行上面的代码将显示一个包含可以动态调整大小的图像的窗口。
以上是 如何在 Tkinter 中将背景图像调整为窗口大小? 的全部内容, 来源链接: utcz.com/z/357724.html