Ученик-кочегар
Группа: Участник
Сообщений: 26
|
Есть программа, которая управляет другой(чужой) программой.
Требуется изменить значение ComboBoх так чтобы другая программа на это изменение отреагировала.
Изменить значение труда не составило, а вот заставить ComboBox послать сообщение родительскому окну, что пора бы отреагировать на изменения никак не получается. В справочной литературе рекомендуют использовать
CODE |
SendMessage(hwnd_MainWindow, WM_COMMAND, Id, lparam);
|
где Id — идентификатоp оpгана упpавления (у нас это комбобокс),
lparam — состоит из
HI_param -Коды уведомления комбиниpованного списка
LO_lparam — описатель дочеpнего оpгана упpавления
Тогда, если известно что описатель окна ComboBox имеет дескриптор hwnd_cb, то сгенерировать событие для родительского окна от лица комбобокса можно так:
CODE |
SendMessage(hwnd_MainWindow, WM_COMMAND, GetDlgCtrlID(hwnd_cb), LPARAM((CBN_EDITUPDATE<<16) + (long)hwnd_cb) );
|
Вроде бы всё логично... но не работает ((
Может кто глянет опытным глазом и направит на путь истинный...
где я промахнулся?
Отредактировано Sashka — 27/01/2006, 09:34 |