Tkinter 背景图像未显示
Tkinter Background Image not showing up
我正在尝试在 Tkinter GUI 中创建一个天气应用程序。它工作正常。我想给它添加一个背景图像,但它不会显示。最初我在没有参考线的情况下做到了,但它没有用。在一些网站上,他们说要保留图像的参考,但这也没有用。
我的 Tkinter window 尺寸也是 1920x1080,图像尺寸相同,但仍然没有显示。我试图将图像尺寸缩小到 window 但仍然无法正常工作。接受任何建议。也没有报错。
bg = PhotoImage('clearsky2.jpg')
bgl = Label(gui,image=bg)
bgl.image = bg #given a reference
bgl.place(x=0, y=0, relwidth=1,relheight=1)
bgl.pack()
遗憾的是 tkinter.PhotoImage
不支持 JPEG
文件,但它在新版本中支持 PNG
并且对 GIF
也有适当的支持。要使用 JPEG
,您需要安装 PIL
。
在终端说:
pip install Pillow
之后像这样导入:
from PIL import Image,ImageTk
那么现在,要用 PIL 打开图像,请说:
img_file = Image.open('clearsky2.jpg')
bg = ImageTk.PhotoImage(img_file)
bgl = Label(gui,image=bg)
bgl.place(x=0, y=0, relwidth=1,relheight=1)
这也适用于 JPEG
和 PNG
文件,请记住您不需要保留引用,除非您在图像上循环或在函数内部创建图像。
希望它解决了你的问题,如果还有错误请告诉我
干杯
我正在尝试在 Tkinter GUI 中创建一个天气应用程序。它工作正常。我想给它添加一个背景图像,但它不会显示。最初我在没有参考线的情况下做到了,但它没有用。在一些网站上,他们说要保留图像的参考,但这也没有用。 我的 Tkinter window 尺寸也是 1920x1080,图像尺寸相同,但仍然没有显示。我试图将图像尺寸缩小到 window 但仍然无法正常工作。接受任何建议。也没有报错。
bg = PhotoImage('clearsky2.jpg')
bgl = Label(gui,image=bg)
bgl.image = bg #given a reference
bgl.place(x=0, y=0, relwidth=1,relheight=1)
bgl.pack()
遗憾的是 tkinter.PhotoImage
不支持 JPEG
文件,但它在新版本中支持 PNG
并且对 GIF
也有适当的支持。要使用 JPEG
,您需要安装 PIL
。
在终端说:
pip install Pillow
之后像这样导入:
from PIL import Image,ImageTk
那么现在,要用 PIL 打开图像,请说:
img_file = Image.open('clearsky2.jpg')
bg = ImageTk.PhotoImage(img_file)
bgl = Label(gui,image=bg)
bgl.place(x=0, y=0, relwidth=1,relheight=1)
这也适用于 JPEG
和 PNG
文件,请记住您不需要保留引用,除非您在图像上循环或在函数内部创建图像。
希望它解决了你的问题,如果还有错误请告诉我
干杯