Выбираю в COMBOBOXe строку, в этот момент (после выбора) необходимо провести ряд действий, связанных со значением этой строки. Сообщения WM_COMMAND - CBN_SELENDOK почему-то не реагируют : .if eax == WM_COMMAND mov eax, [wParam] .if eax ==CBN_SELENDOK invoke MessageBox,NULL,ADDR buffer100,ADDR Mes12,MB_YESNO OR MB_ICONQUESTION OR MB_SYSTEMMODAL .............................................................. т.е. MessageBox не всплывает. Подскажите, пожалуйста, что не так, где ошибка? Заранее благодарен, Valentin.
Дело в том, что для сообщения WM_COMMAND - WPARAM содержит два значения: код содержится в верхней части, а идентификатор COMBOBOX - в нижней: Код (Text): .if eax == WM_COMMAND mov eax, [wParam] shr eax, 16 .if eax == CBN_SELENDOK invoke ... К слову, CBN_SELENDOK не будет получен если пользователь выберет елемент с помощью клавиатуры. Лучше использовать CBN_SELCHANGE.