0
私はC++、Qt 4.8.7、Visual Studio 2013、Windows 7を使用しています。 私のGUIアプリケーションにはQTableView
が含まれています。私はbeginResetModel()
とreset()
信号を私のモデルから処理するスロットを追加しました。これらのスロットは通常呼び出されますが、垂直スクロールは常にリスト全体の一番上にスクロールします。どうすれば修正できますか?私は現在の位置を復元する必要があります。リセット時には、行は削除されないことに注意してください。したがって、古い行の内容を変更したり、新しい行を追加することができます。QTableViewの垂直スクロール復元
//before reset
current_top_row_number_ = table_view_->rowAt(0);
//after reset
table_view_->scrollTo(log_model_->index(current_top_row_number_, 0), QAbstractItemView::PositionAtTop);