![]() |
|
Александр Чукреев
04-12-2009 22:05 (ссылка)
Юлия Вячеславовна
04-12-2009 22:22 (ссылка)
Re: причаливание docking
дело в том, что мне нужно это сделать через ini файлы с функцией\ми docking
Комментарии запрещены
04-12-2009 22:32 (ссылка)
Re: причаливание docking
Посмотрите компонент TControlBar. На него можно ставить панели, и если задать этим панелям свойства DragKind=dkDock и DragMode=dmAutomatic (выставляются в инспекторе объектов), то панель можно таскать и привязывать к компоненту TControlBar.
Если вместо TControlBar использовать обычные панели или, например, форму, то у перемещаемого компонента нужно задать те же свойства (DragKind=dkDock и DragMode=dmAutomatic), но если нужно привязать, то использовать процедуру Dock перемещаемого компонента на событии OnEndDock. Например, ниже приведена реализация такого события для перемещения панели и прикрепления ее на форме:
procedure TForm1.Panel2EndDock(Sender, Target: TObject; X, Y: Integer);
begin
Panel2.Dock(Self, Rect(ScreenToClient(Point(X, Y)), ScreenToClient(Point(X+Panel2.Width, Y+Panel2.Height))));
end;
Еще поищите информацию в королевстве Delphi: www.delphikingdom.com
Если вместо TControlBar использовать обычные панели или, например, форму, то у перемещаемого компонента нужно задать те же свойства (DragKind=dkDock и DragMode=dmAutomatic), но если нужно привязать, то использовать процедуру Dock перемещаемого компонента на событии OnEndDock. Например, ниже приведена реализация такого события для перемещения панели и прикрепления ее на форме:
procedure TForm1.Panel2EndDock(Sender, Target: TObject; X, Y: Integer);
begin
Panel2.Dock(Self, Rect(ScreenToClient(Point(X, Y)), ScreenToClient(Point(X+Panel2.Width, Y+Panel2.Height))));
end;
Еще поищите информацию в королевстве Delphi: www.delphikingdom.com
Комментарии запрещены
ну или найди DRKB, я например, сразу там нашёл это:
http://files.mail.ru/ZOBB5Y