2
這是PyQT遇到的最大麻煩:我爲我的應用程序(我必須縮略圖大量縮略圖)縮小了一個縮略圖線,它看起來好像可以工作(並且它幾乎可以使用確實)。我的主要問題是此錯誤消息,每當我從我的線程發送SIGNAL
:PyQt:我如何處理QThread中的QPixmaps?
QPixmap: It is not safe to use pixmaps outside the GUI thread
我無法弄清楚如何來解決這個問題。我試過通過我的SIGNAL
傳遞QIcon
,但仍然會產生相同的錯誤。如果有幫助,下面是它對付這東西的代碼塊:
的Thumbnailer
類:
class Thumbnailer(QtCore.QThread):
def __init__(self, ListWidget, parent = None):
super(Thumbnailer, self).__init__(parent)
self.stopped = False
self.completed = False
self.widget = ListWidget
def initialize(self, queue):
self.stopped = False
self.completed = False
self.queue = queue
def stop(self):
self.stopped = True
def run(self):
self.process()
self.stop()
def process(self):
for i in range(self.widget.count()):
item = self.widget.item(i)
icon = QtGui.QIcon(str(item.text()))
pixmap = icon.pixmap(72, 72)
icon = QtGui.QIcon(pixmap)
item.setIcon(icon)
它調用線程(當一組圖片被丟棄到列表框中它發生)的部分:
self.thread.images.append(f)
item = QtGui.QListWidgetItem(f, self.ui.pageList)
item.setStatusTip(f)
self.thread.start()
我不知道如何處理這樣的東西,因爲我只是一個GUI新手;)
感謝所有。