WinAPI C++, не могу разобраться как сделать, что бы при выборе элемента списка выполнялось условие?

Я создал такой вот список:

BOXLIST = CreateWindow(L"LISTBOX", NULL, WS_VSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER, 20, 45, 300, 300, hWnd, (HMENU)ID_List, hInstance, NULL);

И правильно ли я понимаю.. что бы написать условие для работы с элементами списка, надо писать через сообщение WM_COMMAND?

Но у меня не выходит.

Нажимаю на элемент списка и не какой реакции..


Ответы (1 шт):

Автор решения: Izviniaus

Да, для этого надо работать с событием WM_COMMAND. Я уже сталкивался с такой проблемой поэтому скину код:

case WM_COMMAND: {
        if (HIWORD(wParam) == CBN_SELCHANGE)
        {
            // Get selected item id
            SelectedItemID= SendMessage((HWND)lParam, (UINT)CB_GETCURSEL, (WPARAM)0, (LPARAM)0);
            std::cout << SelectedItemID;
        }           
    }break;

так же, если у вас несколько LISTBOX элементов, то можете ещё добавить дополнительные проверки.

→ Ссылка