Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запарка с CListCtrl 
:(
    Опции темы
RSV
Дата 26.2.2006, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 27.6.2005

Репутация: нет
Всего: нет



Для работы с базой данных использую CListCtrl
со свойством Report. Как сделать, чтобы при
поиске строк выделялся найденный элемент.
Пробывал:
CListCtrl m_list;

1. m_list.SetItemState(n, LVIS_SELECTED, LVIS_SELECTED);
2. m_list.SetSelectionMark(n);
3. m_list.SetView(n);
Где n это индекс. Ни один из вариантов не работает.
Может я где то ошибаюсь.Заранее спасибо за ответ.


PM MAIL   Вверх
Earnest
Дата 26.2.2006, 20:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Должен работать вариант 1 - SetItemState. Остальные - из другой оперы. Только недостаточно изменить состояние, нужно еще перерисовать. Например, так:
Код

CRect rItem;
GetItemRect (n,rItem,LVIR_BOUNDS);
InvalidateRect(rItem);



--------------------
...
PM   Вверх
AlexPro
Дата 27.2.2006, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 9.11.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 4



Если выделяется единственный элемент, я делаю так:
Код

m_list.SetItemState(n,LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED);

И еще желательно
Код

m_list.EnsureVisible(т,TRUE);

чтобы строка оказалась в области видимости (когда все элементы не влазят на экран).
PM MAIL   Вверх
voff
Дата 30.4.2006, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 30.4.2006

Репутация: нет
Всего: нет



Ещё не плохо было бы фокус на лист поставить, чтобы строка синим цветом выделилась ( m_list.SetFocus() ). Да и свойство у листа Always Show Selection установить в TRUE. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0910 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.