Вниз
Скачать: 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.044 c
1-25290
JB
2003-12-23 13:03
2004.01.09
TCollectionItem


3-25248
alienka
2003-12-10 09:24
2004.01.09
сумма в dbgrideh.footers


14-25583
Вася Добрый
2003-12-17 10:52
2004.01.09
IBExpert+Firebird


14-25527
Knight
2003-12-19 09:16
2004.01.09
Атомные часы


14-25593
rEEl bIg gEEk
2003-12-19 15:15
2004.01.09
Олимпиада по прграммированию...




   Наверх