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

OnClose в объекте TToolBar   Найти похожие ветки 

← →
Алексей Петухов   (2004-05-06 20:58) [0]

Здравствуйте, уважаемые Мастера.
Подскажите пожалуйста, как отловить событие "OnClose" в объекте TToolBar, если я вытащил его мышкой в собственное окно (т.е. ToolBar.Floating=true)?
Заранее благодарю за помощь


← →
Sun bittern ©   (2004-05-07 06:44) [1]

Клик по кнопке в заголовке окна WM_NCLBUTTONDOWN
Только нет гарантии, что при клике на эту кноку TToolBar закрыли.
Т.е. кликнули мышкой и не отпуская кнопки мыши отвели курсор в сторону от кнопки.


← →
Романов Р.В. ©   (2004-05-07 07:53) [2]

Ну если он реализован в виде окна, то по идее должен получать сообщение WM_CLOSE.


← →
Mim1 ©   (2004-05-07 07:54) [3]

Несколько не правильное решение, однако рабочее

procedure TForm1.ToolBar1EndDock(Sender, Target: TObject; X, Y: Integer);
begin
 if ToolBar1.Floating then
   if ToolBar1.Parent is TToolDockForm then
     TForm(ToolBar1.Parent).onClose := FormClose; // дело в том что тулдокформ не является наследником tform
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 ShowMessage("1");
end;


Правильнее тут заменить оконную процедуру у TToolDockForm и перехватывать сообщение wm_close.


← →
Алексей Петухов   (2004-05-09 18:17) [4]

Большое спасибо за помощь



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

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



Память: 0.45 MB
Время: 0.023 c
3-1083126056
russko
2004-04-28 08:20
2004.05.23
Создание таблицы при помощи SQL-файла


6-1081075395
Mazer
2004-04-04 14:43
2004.05.23
IdHTTP - выделенное соединение...


1-1084203363
Avsam
2004-05-10 19:36
2004.05.23
Скрыть Property в наследнике


3-1083065102
Homer
2004-04-27 15:25
2004.05.23
OnGetText динамически ?


6-1081328909
Srg
2004-04-07 13:08
2004.05.23
ACK в протоколе TCP




   Наверх