Как отобразить определённую часть списка CListCtrl

Я использую CListCtrl для отображения большого объёма данных. Необходимо, чтобы программа отображала различные части списка, но в MSDN ничего не сказано о том, как установить верхний видимый элемент. Я пробовал использовать CListCtrl::EnsureVisible(), но это не совсем то, что мне нужно. Для этого можно воспользоваться методом Scroll() в CListCtrl:
1. Получаем верхний элемент
2. Находим высоту строки (при помощи GetItemRect() для первого элемента) - надеюсь, что ваш контрол НЕ owner-drawn с различными размерами строк)
3. Вычисляем расстояние скроллирования по оси Y
4. Скроллируем...
 
« Предыдущая статья   Следующая статья »