在寻找如何从QTableView中删除多个行的线索时,我遇到了这个函数:从QTableView中删除选定行
下面是代码:
QItemSelection selection( ui.tableView->selectionModel()->selection() );
QList<int> rows;
foreach( const QModelIndex & index, selection.indexes() ) {
rows.append( index.row() );
}
qSort( rows );
int prev = -1;
for( int i = rows.count() - 1; i >= 0; i -= 1 ) {
int current = rows[i];
if( current != prev ) {
tableModel->removeRows( current, 1 );
prev = current;
}
}
我需要帮助编写查询。我一直在尝试这样做:-
query.exec(QString("DELETE FROM %1 id IN %2").arg(tableName,rows));
但我认为我应该在某个地方使用QStringList,但我仍在阅读QList的示例。有人可以帮忙吗?