Вниз
Скачать: CL | DM;

ComboBox+TreeView   Найти похожие ветки 

 
bestix ©   (2003-12-23 15:14) [0]

Создается компонент (наследник TCustomControl) внешне похожий на ComboBox. По раскрытию этого ComboBox"а отображается TreeView подобно выпадающему списку ComboBox"а. Нужно отследить момент когда пользователь щелкнул мимо обоих компонентов чтобы спрятать TreeView


 
Игорь Шевченко ©   (2003-12-23 15:21) [1]

Для этого надо реагировать на сообщение WM_KILLFOCUS + WM_CAPTURECHANGED если компонент произвел захват мыши.


 
Ломброзо ©   (2003-12-23 15:42) [2]

Лучше WM_ACTIVATE и ловить в LOWORD(wParam) = WA_INACTIVE.


 
Ломброзо ©   (2003-12-23 15:43) [3]

точнее HIWORD(wParam)


 
Ломброзо ©   (2003-12-23 15:47) [4]

Сорри, ввёл всех в заблуждение. WM_ACTIVATE только для Top-level окон. Я как-то писал свой DateTimePicker, но на VB, и выпадающий контрол представлял из себя форму, поэтому отлов WM_ACTIVATE работал.


 
bestix ©   (2003-12-23 16:39) [5]

Разобрался. Отбрабатывать надо CM_CANCELMODE и WM_KILLFOCUS


 
bestix ©   (2003-12-23 16:48) [6]

Наткнулся на грабли. В MDI форме все эти сообщения не отрабатываются



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.961 c
1-25362
Jungle
2003-12-25 13:41
2004.01.09
Project|Resources


3-25200
Stinger
2003-12-11 22:35
2004.01.09
курсоры Oracle


4-25650
Prov
2003-11-06 09:35
2004.01.09
MessageBoxIndirect - don t work


3-25220
AlexMan
2003-12-11 15:02
2004.01.09
Коннект с удаленной MySQL


3-25196
SZap
2003-12-03 11:15
2004.01.09
AdsQuery с таблицами dbf в которых есть записи помеченные как уд




   Наверх