Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: 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 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
1-1083790717
Diver
2004-05-06 00:58
2004.05.23
Как увеличить выделяемую под прогу память


1-1083848935
Talle
2004-05-06 17:08
2004.05.23
Компонент TXMLDocument


7-1082091982
Дмитрий
2004-04-16 09:06
2004.05.23
Обновить рабочий стол


9-1073395130
mixir
2004-01-06 16:18
2004.05.23
Камера & 3D


3-1082824337
windows
2004-04-24 20:32
2004.05.23
сохранить таблицу