Um dem Modell neue Zeilen hinzuzufügen, rufe ich beginInsertRows
und endInsertRows()
an. So konfigurieren Sie die Ansicht, um zu neuen hinzugefügten Zeilen zu blättern und sie auszuwählen. Ich kann es tun, indem ich einige Signale sende, aber vielleicht hat Qt einen Standardweg dafür.QTableView scrollen zur neuen hinzugefügten Zeile
5
A
Antwort
10
Erstellen Sie einen Steckplatz in Ihrer Formularklasse und verbinden Sie ihn mit dem Signal rowsInserted
des Modells. Der Steckplatz sollte Folgendes enthalten:
void My_form::model_rows_inserted(const QModelIndex & parent, int start, int end) {
view->scrollTo(model->index(start, 0));
}
Beachten Sie, dass Sie dies nicht von Ihrem Modell aus tun können (und sollten). Das Modell sollte nichts über die Ansicht wissen.
7
view->scrollToBottom();
ist bessere Lösung, da bei Verwendung von scrollTo metthod, neue Zeile in einigen Fällen nicht voll sichtbar
Dies ist nicht, wenn einige Sortierung gab es auf der QTableView getan. – Shadow9043