Вниз
Скачать: 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.022 c
14-1083778408
tasman
2004-05-05 21:33
2004.05.23
Проблема с loop в asm е


7-1081378840
nec
2004-04-08 03:00
2004.05.23
Чтение и запись в COM-порт в Win XP/NT


14-1083742581
X9
2004-05-05 11:36
2004.05.23
Клиент форума.


3-1083231690
Mister
2004-04-29 13:41
2004.05.23
про MySQL


1-1084285339
ПрогерШ
2004-05-11 18:22
2004.05.23
Как считать текущий адрес из ИЕ?




   Наверх