我想让“拖放”和“停靠”在我的应用程序中像在 Delphi IDE 中一样工作(即能够在对象检查器/结构视图周围拖动并将它们停靠在合适的位置)。我在将表单对接到 PageControl 方面取得了相当大的成功,但想知道是否有人知道如何让它与小关闭按钮和引脚等一起使用。
我还想知道 Delphi IDE 使用哪些组件来实现这一目标。
我的问题的原因是我想制作更多关于如何做到这一点的高级视频,我之前做过的两个是 and .
您可以使用JVCL Jv对接 http://jvcl.delphi-jedi.org/几乎在任何版本的 Delphi 中都可以拖放组件。它是免费且开源的。具有引脚和关闭按钮的样式可使用 JvDocking 附带的称为 VID(视觉交互开发)样式的对接样式来实现。
已经有很多商业替代品,并且 Delphi 内置了一些支持,我发现这不足以满足我的需求。虽然 Delphi IDE 有自己的内部对接库,但选项卡支持非常有限、缓慢,并且在我看来,是损坏的。
然而,即使在古老的 Delphi 版本(Delphi 7 及更高版本)上,JvDocking 也提供了 VCL 对接提供的所有功能,甚至更多,因此忽略内置的 VCL 功能是没有问题的,就像 TStringGrid 对接真正的网格一样。
JvDocking 的步骤:
- 将停靠服务器和停靠样式对象放在主(主机窗体)上并连接它们。
- 将停靠客户端组件放在客户端(要停靠的表单)上并将其连接到停靠样式。
- 配置 Dock 服务器的属性。
- 运行应用程序。让它创建一个表单。现在将客户端窗体拖到可通过停靠服务器停靠的区域。观察它是否良好地对接。
有关代码演示中的对接,请参阅 JVCL Examples 文件夹中的 JvDocking 演示。
Update
或者您可以使用自 XE 和 XE2 以来 Delphi VCL 中内置的内容。 XE和XE2包含一个对接演示项目,名为dockex.dpr
.
在 Win7/Vista 上,演示位于:
C:\Users\Public\Documents\RAD Studio\9.0\Samples\Delphi\VCL\Docking
请在此处查看 Win XP 上的演示:
C:\Documents and Settings\All Users\Documents\RAD Studio\9.0\Samples\Delphi\VCL\Docking
您还应该查看以下文档:TDockTabSet
在VCL中,以及电子报文章 http://edn.embarcadero.com/article/33446评论里有链接,有源码可以下载here http://cc.embarcadero.com/item/23929。以我的拙见,Jedi JvDocking 的东西比 Delphi 附带的 Docking Demo 更专业、更灵活,但内置的东西具有无需安装任何额外东西即可工作的优点。我刚刚尝试了 DockTabSet 演示和内置的对接演示,它们很慢,而且画得很丑而且闪烁。 JvDocking 看起来很专业。这是你的决定。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)