Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何对QTableView进行排序忽略大小写_C++_Qt_Sorting_Qt5_Qtableview - Fatal编程技术网

C++ 如何对QTableView进行排序忽略大小写

C++ 如何对QTableView进行排序忽略大小写,c++,qt,sorting,qt5,qtableview,C++,Qt,Sorting,Qt5,Qtableview,我有一个QTableView附加到QSqlTableModel。我想给用户一个在运行时对表进行排序的选项。问题是我有大写和小写的值。因此,当我这样做时: ui->tableView->sortByColumn(0, Qt::AscendingOrder); 它按照第0列对表进行排序,但以“a”开头的条目保留在以“Z”开头的条目之后,原因很明显(因为ASCII中的“Z”=90和“a”=97)。我想要一种使用列0对表进行排序的方法,但忽略大小写我找到的更简单的方法是: void Mai

我有一个QTableView附加到QSqlTableModel。我想给用户一个在运行时对表进行排序的选项。问题是我有大写和小写的值。因此,当我这样做时:

ui->tableView->sortByColumn(0, Qt::AscendingOrder);

它按照第0列对表进行排序,但以“a”开头的条目保留在以“Z”开头的条目之后,原因很明显(因为ASCII中的“Z”=90和“a”=97)。我想要一种使用列0对表进行排序的方法,但忽略大小写

我找到的更简单的方法是:

void MainWindow::on_actionAuthor_descending_triggered()
{
QSortFilterProxyModel *m = new QSortFilterProxyModel(this);

m->setSourceModel(model);
m->setSortCaseSensitivity(Qt::CaseInsensitive);

m->sort(1, Qt::DescendingOrder);

ui->tableView->setModel(m);
}

现在就提供一个更好的@eyllanesc