现在需要把某个本地文件夹下的图片以缩略图的形式显示出来,然后我使用了QListWidget,设置
listWidget->setViewMode(QListView::IconMode);
然后这里需要把缩略图进行排序,QListWidget提供了sortItems()函数进行排序,但这里有2个问题
1由于文件夹下又文件夹和文件,而文件夹需要位于最前面(不需要排序),后面的文件需要排序,而sortItems()函数会把所有的item进行排序
2考虑到有些文件文件比较多,加载比较慢,所以我使用了多线程,主线程在QListWidget里面addItem();另一个线程读取本地文件并且每加载一个文件,就把文件的缩略图通过信号发给主线程里
item_list.at(Ids)->setIcon(QIcon(pixs))
然后如果加载某个比较多文件的目录时候,在加载完成前调用sortItems()程序会直接崩溃。。。。
所以这里我需要自己想办法排序,然后我想问下对于一个QListWidget他的item如何移动,所有的QListWidgetitem都通过addItem()函数添加进去,那有没有调整这些QListWidgetItem的顺序,比如最先添加进去的和最后添加进去的换个位置