我正在尝试使用 qtsringlist() 对文件名进行排序。但是,我不确定如何在 QT 中使用 normalsorting。输出给我类似的东西 “image1.png” “image10.png” “image100.png”
代替“image1.png”后跟“image2.png”等等。然后,我将列表添加到列表小部件中。下面我附上了我的代码。请帮忙。谢谢。
`void QtWidgetsApplication::displayImagesList() {
QListWidgetItem *item = new QListWidgetItem();
QDirIterator it(QStringLiteral("C:\\Users\\Documents\\Visual Studio 2015\\Projects\\cas\\images"),
QStringList() << "*.png", QDir::Files, QDirIterator::Subdirectories);
QFileInfo files;
while (it.hasNext()) {
QFileInfo file(it.next());
faList.append(file.fileName());
ui.images->setSortingEnabled(true);
//ui.images->sortItems(Qt::AscendingOrder);
_files.push_back(file.fileName());
//cout << file.fileName().toStdString() << "\n";
//Cout << file.fileName().length() << "\n";
//if (file.fileName().length() == 17) {
// cout << file.fileName().toStdString() << "\n";
//
//}
}
ui.images->addItems(faList);
ui.images->setMinimumWidth(ui.images->sizeHintForColumn(0));
}`