如何将 JPEG 图像插入 python Tkinter 窗口?
Posted
技术标签:
【中文标题】如何将 JPEG 图像插入 python Tkinter 窗口?【英文标题】:How do I insert a JPEG image into a python Tkinter window? 【发布时间】:2014-07-17 01:26:05 【问题描述】:如何将 JPEG 图像插入 Python 2.7 Tkinter 窗口?以下代码有什么问题?图片名为Aaron.jpg。
#!/usr/bin/python
import Image
import Tkinter
window = Tkinter.Tk()
window.title("Join")
window.geometry("300x300")
window.configure(background='grey')
imageFile = "Aaron.jpg"
window.im1 = Image.open(imageFile)
raw_input()
window.mainloop()
【问题讨论】:
您在这方面花了多长时间? 嗯...分机是干什么用的? 可能没必要这么说...“请修正代码并粘贴在下面!” 您遇到的错误是什么?检查this 并查看问题是否仍然存在 @dilbert 超过六年 (: 【参考方案1】:试试这个:
import tkinter as tk
from PIL import ImageTk, Image
#This creates the main window of an application
window = tk.Tk()
window.title("Join")
window.geometry("300x300")
window.configure(background='grey')
path = "Aaron.jpg"
#Creates a Tkinter-compatible photo image, which can be used everywhere Tkinter expects an image object.
img = ImageTk.PhotoImage(Image.open(path))
#The Label widget is a standard Tkinter widget used to display a text or image on the screen.
panel = tk.Label(window, image = img)
#The Pack geometry manager packs widgets in rows or columns.
panel.pack(side = "bottom", fill = "both", expand = "yes")
#Start the GUI
window.mainloop()
相关文档:ImageTk Module、Tkinter Label Widget、Tkinter Pack Geometry Manager
【讨论】:
请注意,原始 PIL 不适用于 Python 3,但 Pillow 几乎可以替代:pillow.readthedocs.io/en/latest/index.html Re @Caspar 的评论,在 Python 3(.6) 的命令行中,执行pip install pillow
以获取模块。
请注意,包含图像的附加“弹出”窗口也需要在标签实例化之外指定图像(例如label = tk.Label(window, image=img)
然后label.image = img
最后label.pack()
)【参考方案2】:
import tkinter as tk
from tkinter import ttk
from PIL import Image, ImageTk
win = tk. Tk()
image1 = Image. open("Aoran. jpg")
image2 = ImageTk. PhotoImage(image1)
image_label = ttk. Label(win , image =.image2)
image_label.place(x = 0 , y = 0)
win.mainloop()
【讨论】:
【参考方案3】:from tkinter import *
from PIL import ImageTk, Image
window = Tk()
window.geometry("1000x300")
path = "1.jpg"
image = PhotoImage(Image.open(path))
panel = Label(window, image = image)
panel.pack()
window.mainloop()
【讨论】:
请在此处添加一些关于 wat is hapng 的解释以上是关于如何将 JPEG 图像插入 python Tkinter 窗口?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 jpeg 帧从 java 客户端流式传输到 python 服务器
在不超过 inode 或硬盘空间的情况下存储大量 jpeg 图像(Python)
如何拍摄由 Python-tkinter 创建的正在运行的 GUI 窗口的快照并保存为图像文件(.jpeg/.png)?