gpt4 book ai didi

python - 使用 wxPython 显示缩略图的简单方法

转载 作者:太空宇宙 更新时间:2023-11-04 10:38:01 25 4
gpt4 key购买 nike

我正在寻找一种使用 wxPython 显示缩略图的简单解决方案。这与创建缩略图无关。我有一个缩略图目录,想在屏幕上显示它们。我故意不使用(面板、框架、窗口、滚动窗口)之类的术语,因为我对各种解决方案持开放态度。

另请注意,我发现了多个显示单个图像的示例,因此引用任何此类解决方案对我没有帮助。解决方案一定是在wx中同时显示多张图片。

似乎我想做的事情是在ThumbnailCtrl中完成的,但是Andrea的代码很复杂,我找不到在屏幕上显示的部分。我确实在 Mark Lutz 的编程 Python 书中找到了一个简单的解决方案,但是虽然他的 viewer_thumbs.py 示例确实具有我正在寻找的简单性,但它是使用 Tkinter 完成的。

因此,任何 wx 解决方案都将不胜感激。

编辑:我正在添加一个指向可以找到 Mark Lutz 的工作 Tkinter 代码的地方的链接。谁能想到 wx 等价物?

http://codeidol.com/community/python/viewing-and-processing-images-with-pil/17565/#part-33

最佳答案

我建议使用 ThumbNailCtrl 小部件:http://wxpython.org/Phoenix/docs/html/lib.agw.thumbnailctrl.html . wxPython 演示中有一个很好的示例。或者您可以使用文档中的这个。请注意,ThumbNailCtrl 需要安装 Python 图像库。

import os

import wx
import wx.lib.agw.thumbnailctrl as TC

class MyFrame(wx.Frame):

def __init__(self, parent):

wx.Frame.__init__(self, parent, -1, "ThumbnailCtrl Demo")

panel = wx.Panel(self)

sizer = wx.BoxSizer(wx.VERTICAL)

thumbnail = TC.ThumbnailCtrl(panel, imagehandler=TC.NativeImageHandler)
sizer.Add(thumbnail, 1, wx.EXPAND | wx.ALL, 10)

thumbnail.ShowDir(os.getcwd())
panel.SetSizer(sizer)


# our normal wxApp-derived class, as usual

app = wx.App(0)

frame = MyFrame(None)
app.SetTopWindow(frame)
frame.Show()

app.MainLoop()

只需更改 thumbnail.ShowDir(os.getcwd()) 行,使其指向您计算机上的正确文件夹。

我也在这里写了一篇看照片的文章:http://www.blog.pythonlibrary.org/2010/03/26/creating-a-simple-photo-viewer-with-wxpython/不过它不使用缩略图。

关于python - 使用 wxPython 显示缩略图的简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22444378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com