Ich habe QT-Dokument als Referenz gesucht, aber ich habe ein paar Fragen. Hier ist die Implementierung in QT doc:Wie implementiert man die removeRow() - Funktion für ein benutzerdefiniertes Modell in QT?
bool TableModel::removeRows(int position, int rows, const QModelIndex &index)
{
Q_UNUSED(index);
beginRemoveRows(QModelIndex(), position, position + rows - 1);
for (int row = 0; row < rows; ++row) {
listOfPairs.removeAt(position);
}
endRemoveRows();
return true;
}
Ich denke, es nutzt im Tableview index.row direkt die Daten im Modell zu finden. Was aber, wenn ich die Sortierung für die Tabellenansicht aktiviere? Nach dem Sortieren entspricht der Index in der Tabellenansicht nicht den Daten im Modell. Die erste Zeile in der Tabellenansicht kann die dritte Daten im Modell sein.
Wie kann ich die Daten im Modell über Tabellenansicht lokalisieren? Und gibt es bessere Implementierungen für die Funktion removeRow()?