Что такое CBN_???????==16
От: FUKS  
Дата: 05.04.02 13:31
Оценка:
При выборе другого пункта в COMBOBOXе родительскому окну от данного контрола приходит серия WM_COMMANDов с разными кодами в HIWORD(wParam), при этом после 0x0009 (CBN_SELENDOK) приходит 0x0010, которого в winuser.h вообще нет, там 10 последний, т.е. 0x000a. А что же такое 0x0010 и чем его закусывать?
Re: Что такое CBN_???????==16
От: Рек Россия  
Дата: 05.04.02 14:20
Оценка:
Здравствуйте FUKS, Вы писали:

FUKS>При выборе другого пункта в COMBOBOXе родительскому окну от данного контрола приходит серия WM_COMMANDов с разными кодами в HIWORD(wParam), при этом после 0x0009 (CBN_SELENDOK) приходит 0x0010, которого в winuser.h вообще нет, там 10 последний, т.е. 0x000a. А что же такое 0x0010 и чем его закусывать?


теперь это задокументировано

/*
* Combo Box Notification Codes
*/
#define CBN_SELENDCANCEL 10
..

CBN_SELENDCANCEL
The CBN_SELENDCANCEL notification message is sent when the user selects an item, but then selects another control or closes the dialog box. It indicates the user's initial selection is to be ignored. The parent window of the combo box receives this notification message through the WM_COMMAND message.

LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // WM_COMMAND
WPARAM wParam, // combo box identifier, CBN_SELENDCANCEL
LPARAM lParam // handle to combo box (HWND)
);
Parameters
wParam
The low-order word specifies the control identifier of the combo box.
The high-order word specifies the notification message.

lParam
Handle to the combo box.
Remarks
In a combo box with the CBS_SIMPLE style, the CBN_SELENDCANCEL notification message is not sent. The CBN_SELENDOK notification message is sent immediately before every CBN_SELCHANGE notification message.
Re[2]: Что такое CBN_???????==16
От: Курилка Россия http://kirya.narod.ru/
Дата: 05.04.02 14:22
Оценка:
Здравствуйте Рек, Вы писали:

Рек>Здравствуйте FUKS, Вы писали:


FUKS>>При выборе другого пункта в COMBOBOXе родительскому окну от данного контрола приходит серия WM_COMMANDов с разными кодами в HIWORD(wParam), при этом после 0x0009 (CBN_SELENDOK) приходит 0x0010, которого в winuser.h вообще нет, там 10 последний, т.е. 0x000a. А что же такое 0x0010 и чем его закусывать?


Рек>теперь это задокументировано


Рек>/*

Рек> * Combo Box Notification Codes
Рек> */
Рек>#define CBN_SELENDCANCEL 10
Рек>..

я чё-то не понимаю или 16 == 10 ???
Re[3]: Что такое CBN_???????==16
От: Рек Россия  
Дата: 05.04.02 14:36
Оценка:
Здравствуйте Курилка, Вы писали:

К>Здравствуйте Рек, Вы писали:


Рек>>Здравствуйте FUKS, Вы писали:


FUKS>>>При выборе другого пункта в COMBOBOXе родительскому окну от данного контрола приходит серия WM_COMMANDов с разными кодами в HIWORD(wParam), при этом после 0x0009 (CBN_SELENDOK) приходит 0x0010, которого в winuser.h вообще нет, там 10 последний, т.е. 0x000a. А что же такое 0x0010 и чем его закусывать?


Рек>>теперь это задокументировано


Рек>>/*

Рек>> * Combo Box Notification Codes
Рек>> */
Рек>>#define CBN_SELENDCANCEL 10
Рек>>..

К>я чё-то не понимаю или 16 == 10 ???


Извиняюсь. Тормознул.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.