pyqt listwidget 缩略图
时间: 2023-11-01 08:58:45 浏览: 211
可以使用QListWidget和QListWidgetItem来实现在PyQt中显示缩略图的功能。下面是一个简单的示例代码:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QListWidget, QListWidgetItem, QLabel
from PyQt5.QtGui import QPixmap
class ThumbnailWidget(QListWidgetItem):
def __init__(self, image_path):
super(ThumbnailWidget, self).__init__()
self.setText('')
self.setIcon(QIcon(image_path))
self.setSizeHint(QSize(100, 120))
class MainWindow(QWidget):
def __init__(self):
super(MainWindow, self).__init__()
self.layout = QVBoxLayout()
self.list_widget = QListWidget()
self.layout.addWidget(self.list_widget)
self.load_thumbnails()
self.setLayout(self.layout)
def load_thumbnails(self):
image_paths = [
'image1.jpg',
'image2.jpg',
'image3.jpg',
# ...
]
for image_path in image_paths:
thumbnail = ThumbnailWidget(image_path)
self.list_widget.addItem(thumbnail)
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
上述代码创建了一个窗口,并在窗口中使用QListWidget来显示缩略图。每个缩略图都是一个QListWidgetItem,其中包含一个带有图像的QIcon。你可以根据自己的需求修改图像路径列表image_paths,并将其应用到你的程序中。
阅读全文