Delphi中停靠技术的实现
的宽度设为0就行了。
procedure TDockableForm.FormClose(Sender: TObject; var Action: TCloseAction); begin MainForm.LeftDockPanel.Width := 0; Action := caHide; end; 以上所讲的是如何在主窗口上停靠窗体,原代码都通过测试。同理,我们可以在主窗口的右边,下边,上边都实现停靠功能。 对了,刚才我们只介绍了OnDockOver和OnDockDrop,忘了介绍别的事件,下面简单介绍一下: 3.OnGetSiteInfo(Sender: TObject; DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean); 这个事件是在窗体移动时触发的,所以经常触发,它里面的DockClient就是TDockableForm, 有一个引用参数叫CanDock,和OnDockOver中的Accept差不多,都是询问是否允许停靠。在这里可以不写,CanDock默认就是True,也可以写上CanDock := DockClient is TDockableForm; 4.OnStartDock(Sender: TObject; var DragObject: TDragDockObject); 5.OnEndDock(Sender, Target: TObject; X, Y: Integer); 6.OnUnDock(Sender: TObject; Client: TControl; NewTarget: TWinControl; var Allow: Boolean); 这三个事件都是在 更多相关文章
|
推荐文章
精彩文章
|