Вопрос по CListCtrl
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 26.01.18 10:31
Оценка:
Есть компонент IDC_LIST1, которому соответствует переменная m_IDC_LIST1 типа CListCtrl. При этом этот компонент IDC_LIST1 поставлен в режим таблицы (грида). Показывается при этом без прокрутки только 20 строк.
Есть динамический массив (вектор) vector myvect<string> (или vector myvect<char[80]>), содержащий, скажем, 150 строк ( std::string или char[80] ).
Как сделать так, чтобы при прокрутке (скроллинге) этого грида IDC_LIST1 по вертикали отображались бы только 50 текущих строк? То есть у меня в этом гриде расположены только 50 первых строк, я прокручиваю этот грид по вертикали вниз и когда попадаю на 51-ую строку, то у меня содержимое грида меняется--вместо строк с 1-ой по 50-ую у меня в этом гриде отображаются строки с 10-ой по 100-ую. А когда при дальнейшей прокрутке грида по вертикали вниз я попадаю на 101-ую строку, то у меня в гриде отображаются не строки с 51-ой по 100-ую, а с 101-ой по 150-ую.
Аналогично при прокуртке грида вверх--когда я попадаю на 100-ую строку, то у меня в гриде отображаются строки с 51-ой по 100-ую (при этом нижней строкой будет 100-ая строка), а не с 101-ой по 150-ую. А когда я продолжаю прокручивать грид вверх и попадаю на 50-ую строку, то у меня в гриде отображаются строки с 1-ой по 50-ую (при этом 50-ая строка будет нижней), а не строки с 51-ой по 100-ую.
То есть чтобы я мог не поместить все вместе 150 строки из моего динамического массива (вектора), а показывать этот динамический массив "по частям"--сперва первую часть по 50 строк, потом вторую часть по 50 строк, затем третью часть по 50 строк.
Как это сделать?

И как определить при прокрутке грида IDC_LIST1, на какой его строке я нахожусь? Какую функцию лучше при этом использовать-- OnLvnBeginScrollList1 или OnLvnEndScrollList1 ?
1613 г. = 2024 г.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.