私の GUI では、画像からいくつかのサムネイルをロードしたいと考えています。画像のサイズが大きい (おそらく 3 MB)。
今回はGUIがフリーズしないように、スレッドにロードしたい画像。このために、画像を a としてロードするようにテストしQIcon
ましたQRunnable
:
ImageLoader::ImageLoader(QListWidgetItem *item, QString path)
{
this->path=path;
this->item=item;
}
void ImageLoader::run()
{
QIcon icon(path);
item->setIcon(icon);
}
私はこれを QRunnable と呼んでいますQThreadPool::globalInstance()->start(new ImageLoader(item,path));
しかし、「QPixmap: GUI スレッド外でピックスマップを使用するのは安全ではありません」というエラーが発生します。
GUIがフリーズしないようにするにはどうすればよいですか?