<p>这是一个示例应用程序,当标签改变大小时,它使用枕头调整标签上的图像大小:</p>
<pre><code>from tkinter import *
from PIL import Image, ImageTk
root = Tk()
root.title("Title")
root.geometry("600x600")
root.configure(background="black")
class Example(Frame):
def __init__(self, master, *pargs):
Frame.__init__(self, master, *pargs)
self.image = Image.open("./resource/Background.gif")
self.img_copy= self.image.copy()
self.background_image = ImageTk.PhotoImage(self.image)
self.background = Label(self, image=self.background_image)
self.background.pack(fill=BOTH, expand=YES)
self.background.bind('<Configure>', self._resize_image)
def _resize_image(self,event):
new_width = event.width
new_height = event.height
self.image = self.img_copy.resize((new_width, new_height))
self.background_image = ImageTk.PhotoImage(self.image)
self.background.configure(image = self.background_image)
e = Example(root)
e.pack(fill=BOTH, expand=YES)
root.mainloop()
</code></pre>
<p>以下是使用<a href="http://en.wikipedia.org/wiki/Lenna" rel="noreferrer">Lenna</a>图像作为示例的工作原理:</p>
<p><img src="https://i.stack.imgur.com/kdD8S.gif" alt="enter image description here"/></p>