Как отловить изменение положения одного окна из другого?
mvb
Дата: 26.04.2011 07:27:16
Всем привет! Есть две формы - главная и дополнительная, которая висит в стороне (типа тултипа, без фокуса). Надо при изменении позиции первой формы вторую прятать, но это надо отловить не из первой формы (там без проблем через wm_WindowPosChanging), а из второй. Как это можно сделать?
абыр-лавг
Дата: 26.04.2011 07:48:39
Например, узнать дескриптор интересующегося окна, и внимательно просматривать направляемые ему сообщения... :)
абыр-лавг
Дата: 26.04.2011 07:49:08
"интересующего"
mvb
Дата: 26.04.2011 07:58:01
абыр-лавг,
я пытался во втором ловить сообщения об изменении позиции, но видать первое их раньше получает, обрабатывает и "гасит"..
абыр-лавг
Дата: 26.04.2011 08:23:13
mvb, твое кунг-фу слабее, чем нужно.
...код?
mvb
Дата: 26.04.2011 08:50:25
абыр-лавг,
это во второй форме:
procedure PosChangedHandle(var msg: TMessage); message WM_WINDOWPOSCHANGING;
........
procedure TBalloonControl.PosChangedHandle(var msg: TMessage);
begin
HideBalloon
end;
абыр-лавг
Дата: 26.04.2011 09:04:13
mvb, и чё? Как обработчик-то к первой форме прицепил? :)
mvb
Дата: 26.04.2011 09:11:50
абыр-лавг,
никак, в этом проблема и состоит - отловить перемещение первой формы из второй..
абыр-лавг
Дата: 26.04.2011 09:21:38
mvb, ну дескриптор первого окошка-то хоть получить могёшь?
mvb
Дата: 26.04.2011 09:27:50
абыр-лавг,
Screen.ActiveForm.Handle