python gui tkinter练习---列表显示一个文件夹里的jpg图片

本文介绍了如何利用Python的Tkinter库创建一个图形用户界面(GUI),该界面能够列出并显示指定文件夹中的所有jpg图片。通过这个练习,读者将学习到Tkinter的基本用法以及如何处理图像文件。
摘要由CSDN通过智能技术生成

先上图啊



#coding=utf-8
from PIL import ImageTk
import PIL
from tkinter import *
from tkinter.filedialog import  askdirectory
from tkinter import ttk
import os
#导入tk模块
top = Tk()
#初始化Tk
top.title('label test')
#标题显示为label test
label = Label(top, text = 'this is my first label')
top.geometry('1080x1080')
top.resizable(width=True, height=True)  # 固定长宽不可拉伸
#创建一个label,它属于top窗口,文本显示内容为.....

# path = "C:/Users/Administrator/PycharmProjects/pythongui/"
path = StringVar()
path_for_jpg = "C:/Users/Administrator/PycharmProjects/pythongui/"
xialaliebiaozhi = []
im2 = PIL.Image.open("C:/Users/Administrator/PycharmProjects/pythongui/1.jpg")
img2 = ImageTk.Pho
Python 中使用 Tkinter 实现选择文件夹中的图片显示的步骤如下: 1. 导入 Tkinter 和 PIL 库(用于处理图片) 2. 创建一个 Tkinter 窗口,并添加一个按钮用于打开文件选择对话框 3. 在按钮的回调函数中使用 `tkinter.filedialog` 库中的 `askopenfilename()` 函数选择图片文件 4. 打开图片文件,使用 PIL 库的 `Image.open()` 方法读取图片 5. 创建一个 Tkinter 的 `PhotoImage` 对象,用于保存图片 6. 在 Tkinter 窗口中创建一个 `Label` 控件,使用 `PhotoImage` 对象作为标签的图像 7. 使用 `pack()`、`grid()` 或 `place()` 方法将标签放置在窗口中 下面是一个示例代码,演示了如何在 Tkinter 窗口中选择一个图片并将它显示出来: ```python import tkinter as tk from tkinter import filedialog from PIL import Image, ImageTk # 创建 Tkinter 窗口 root = tk.Tk() # 添加一个按钮用于打开文件选择对话框 def open_file(): # 选择图片文件 filename = filedialog.askopenfilename(filetypes=[("Image Files", "*.png;*.jpg;*.jpeg;*.bmp")]) if filename: # 打开图片文件 image = Image.open(filename) # 创建 PhotoImage 对象 photo = ImageTk.PhotoImage(image) # 创建 Label 控件并将其放置在窗口中 label = tk.Label(root, image=photo) label.image = photo label.pack() button = tk.Button(root, text="打开图片", command=open_file) button.pack() # 进入主循环 root.mainloop() ``` 在代码中,我们使用 `tkinter.filedialog` 库中的 `askopenfilename()` 函数选择图片文件。然后,使用 PIL 库的 `Image.open()` 方法打开图片文件,创建 `PhotoImage` 对象,并将其作为标签的图像。最后,使用 `Label` 控件将图像放置在窗口中。注意,`PhotoImage` 对象必须在程序中保持引用,否则会被 Python 垃圾回收机制清除。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值