Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2018, 17:21   #1
Maxim_St
Пользователь
 
Регистрация: 10.05.2017
Сообщений: 23
По умолчанию Поиск в ListView(LVM_FINDITEM по LPARAM'етру )

Здравствуйте.

Пытаюсь понять, что я делаю не так.
При добавление в ListView в структуре LVITEMW указываю LPSTR_TEXTCALLBACK и соответственно
обрабатываю LVN_GETDISPINFOW.

Потом по клику!!!(пока что) пытаюсь получить индекс выделенного элемента.

вырезка....
Код:
int IResFind = -1;
LVITEMW lvItem = { 0 };

lvItem.mask = LVIF_PARAM;
lvItem.iItem = iIndItem;
if (0 != SendMessageW(iList, LVM_GETITEMW, 0, LPARAM(&lvItem)))
{
      tagLVFINDINFOW Findit = { 0 };
      Findit.flags = LVIF_PARAM;
      Findit.lParam = lvItem.lParam;

     IResFind = SendMessageW(LV, LVM_FINDITEMW, (WPARAM)-1, (LPARAM)&Findit);
}

IResFind всегда -1.
может я не так понял справку и в Findit.lParam нужно подсовывать что-то другое?
Maxim_St вне форума Ответить с цитированием
Старый 16.11.2018, 18:32   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от Maxim_St Посмотреть сообщение
пытаюсь получить индекс выделенного элемента
А как это связано с поиском по параметру?
Цитата:
Сообщение от Maxim_St Посмотреть сообщение
При добавление в ListView в структуре LVITEMW указываю LPSTR_TEXTCALLBACK
А Вы там параметр вообще устанавливаете?
Black Fregat вне форума Ответить с цитированием
Старый 16.11.2018, 18:54   #3
Maxim_St
Пользователь
 
Регистрация: 10.05.2017
Сообщений: 23
По умолчанию

Цитата:
Сообщение от Black Fregat Посмотреть сообщение
А как это связано с поиском по параметру?

Так хоть понятно какой индекс элемента на самом деле.

Цитата:
Сообщение от Black Fregat Посмотреть сообщение
А Вы там параметр вообще устанавливаете?
Обязательно.
Код:
int LV_AddItem(HWND iList, void *LVList)
{
	LVITEM ItemV = { 0 };

	int iLVItemCount = ListView_GetItemCount(iList);

	ItemV.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_GROUPID;
	ItemV.iSubItem = 0;
	ItemV.iGroupId = I_GROUPIDCALLBACK;
	ItemV.iItem = iLVItemCount;
	ItemV.pszText = LPSTR_TEXTCALLBACK;

	ItemV.iImage = I_IMAGECALLBACK;
	ItemV.lParam = (LPARAM)LVList;

	int iRes = ListView_InsertItem(iList, &ItemV);
	
	return iRes;
}



Никто таким поиском не пользовался?

Последний раз редактировалось Maxim_St; 17.11.2018 в 16:00.
Maxim_St вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в ListView sli-pro Общие вопросы Delphi 3 07.08.2012 12:13
Поиск в ListView / Delphi unreal2x Помощь студентам 1 16.06.2012 12:57
WPARAM wParam, LPARAM lParam, LPVOID *lpParam mizantrop32 Win Api 2 18.02.2011 12:10
Поиск текста в Listview bulldog5293 Общие вопросы Delphi 1 12.02.2011 16:58
WPARAM wParam, LPARAM lParam откуда берётся? Garic_ Общие вопросы C/C++ 4 09.06.2010 22:42