我正在尝试在pyqt场景中的某个位置加载一系列图像。图像数量可能会增加数百或数千。当我运行它时,加载gui需要很长时间。
我想加载在graphicsView中可见的图片,然后延迟加载其他图像,直到其在视口中。
有人可以告诉我该如何处理吗?
class MyView(QGraphicsView):
def __init__(self):
super(MyView, self).__init__()
self.scene = QGraphicsScene(self)
self.resize(800,600)
self.setViewportUpdateMode(self.smartViewportUpdate)
self.setScene(self.scene)
path = '/path/'
for i in enumerate(os.listdir(path)):
file = os.path.join(path, f)
pixmap = QtGui.QPixmap(file)
pix_item = QGraphicsPixmapItem(pixmap)
pix_item.setPos(i*250, 0)
self.scene.addItem(pix_item)