Название: Как при скролле таблицы находить самый верхний topRow? Отправлено: nvek от Июль 19, 2018, 11:50 В таблице rowCount() = 200 , а всего записей в таблице штук 100к+
при скролле меняется topRow по нему я нахожу нужные записи для отображения. При скролее надо чтобы выделялся всегода topRow и еще чтобы скролл бар был по размеру не на 200 элементов, а на 100к+ Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: Пантер от Июль 19, 2018, 12:06 Мне кажется, ты что-то делаешь неправильно. Посмотри примеры по MVC в Qt.
Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: nvek от Июль 19, 2018, 12:15 нет, как раз таки правильно, я не хочу чтобы при загрузке загружались сразу миллион записей, поэтому там реализован видимых кэш записей, который обновляется так как надо.
а если применить еще фильтрацию стандартную , которая в qt, то можно вообще ахнуть от быстродействия Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: Пантер от Июль 19, 2018, 12:18 Вьюха у модели и так запрашивает только видимые ячейки. А вот сортирровка/фильтрация требует полной загрузки..
Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: nvek от Июль 19, 2018, 12:35 ну вот представь если через прокси будет сортировать мильон записей
Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: nvek от Июль 19, 2018, 12:36 Код: QModelIndex firstRowIndex = m_tableView->indexAt(QPoint(m_tableView->viewport()->rect().x() + 5, m_tableView->viewport()->rect().y() + 5)); Код: connect(m_tableView->verticalScrollBar(), &QScrollBar::valueChanged, this, &MainForm::toprowscrollselect); Название: Re: Как при скролле таблицы находить самый верхний topRow? Отправлено: nvek от Июль 19, 2018, 12:38 а как теперь подогнать размер скроллбара под кол-во записей всего? вернее не размер, а скорость прокрутки
|