![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Деактивация формы при клике на popup-окне
LightGreen © (2010-02-16 22:44:00)Короче такая ситуация. Сделал Popup-окно по аналогии с THintWindow с той разницей, что оно при щелчке должно исчезать. В общем, всё замечательно, кроме того, что при нажатии мышкой основная форма деактивируется! Как это можно предотвратить?
Вот код:
TMyHintWindow = class(THintWindow)
protected
procedure WMNCHitTest(var Message: WMNCHitTest); message WM_NCHITTEST;
end;
procedure TMyHintWindow.WMNCHitTest(var Message: WMNCHitTest);
begin
with Message do
Message.Result := DefWindowProc(Handle, Msg, WParam, LParam);
end;
brother (2010-02-24 06:01:00) [1]> это - костыль.
не согласен
> А мне надо решить эту проблему
заметь, тебе, а не нам...
> без дёрганий фокуса.
ты его уже дергаешь, хотя бы по клику...
LightGreen (2010-02-17 10:23:00) [2]>Активируй её заново сам.
Спасибо за совет, но это - костыль. А мне надо решить эту проблему как положено, без дёрганий фокуса.
Плохиш (2010-02-16 23:48:00) [3]
> Но это деактивирует главную форму приложения!
Активируй её заново сам.
LightGreen (2010-02-16 22:47:00) [4]Чтобы закрыть окно по щелчку код такой:
procedure TMyHintWindow.WMLButtonDown(var Message: TWMMouse); message WM_LBUTTONDOWN;
begin
Hide;
end;
Но это деактивирует главную форму приложения!