Question

To add new rows to model I am calling beginInsertRows and endInsertRows(). How to configure the view to scroll to new added rows and select it. I can do it by sending some signals but maybe Qt has standard way for it.

Était-ce utile?

La solution

Create a slot in your form class and connect it to the model's rowsInserted signal. The slot should contain the following:

void My_form::model_rows_inserted(const QModelIndex & parent, int start, int end) {
  view->scrollTo(model->index(start, 0));
}

Note that you cannot (and should not) do this from your model. The model should know nothing about the view.

Autres conseils

view->scrollToBottom(); is better solution, because if using scrollTo metthod, new row in some cases is not full visible

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top