Delphi 将页面控件定义为jvcl dockserver.custom dock面板。可能吗?

Delphi 将页面控件定义为jvcl dockserver.custom dock面板。可能吗?,delphi,delphi-xe2,docking,dockpanel,jvcl,Delphi,Delphi Xe2,Docking,Dockpanel,Jvcl,我有一个带有左面板的主窗体,在窗体的中心有一个页面控件..我正在尝试在页面控件上停靠其他窗体,正如我在Alister Christie制作的示例中看到的那样;问题是将表单拖到pagecontrol中是懒惰的;我发现一个JVCL dockserver和一个JVCL dockclient可以帮我解决这个问题。。问题是,我想将pagecontrol作为自定义dock面板分配给JVCL dockserver,但我不知道怎么做:下面是我在mainform的oncreate事件上编写的代码 procedur

我有一个带有左面板的主窗体,在窗体的中心有一个页面控件..我正在尝试在页面控件上停靠其他窗体,正如我在Alister Christie制作的示例中看到的那样;问题是将表单拖到pagecontrol中是懒惰的;我发现一个JVCL dockserver和一个JVCL dockclient可以帮我解决这个问题。。问题是,我想将pagecontrol作为自定义dock面板分配给JVCL dockserver,但我不知道怎么做:下面是我在mainform的oncreate事件上编写的代码

procedure Tform1.FormCreate(Sender: TObject);  
begin  
  jvdockserver1.CustomDockPanel := jvpagecontrol1;  
end;  
你能帮我一下吗?
忘了提到我是编程新手,我正在使用Delphi XE2

JVCL对接服务器组件只能接受面板作为对接位置,可以是内置面板,也可以是您在设计时放置在表单上的自定义TPanel。不过,如果您愿意,绝地对接库将为您创建页面控件。但是,它必须是管理它们的人,因为这些控件可能会被移动(通过您或其他一些jvdocking代码)

因此,如果您想让一些选项卡可见,您不应该尝试使用自己的页面控件,而是应该使用JVCL随附的停靠代码演示作为示例,位于文件夹JVCL\examples\JvDocking\DockingInCode

以下是JvDocking系统为您制作的选项卡的外观,使用
CustomDockPanel
将自定义dock面板连接到TPanel,然后JvDocking在您需要时自动为您“创建页面控件”:

请注意,页面是由停靠系统创建或销毁的,管理选项卡的底层工作是由JvDocking库完成的,而不是由您完成的

您需要做的主要事情是使用MainFm.pas中的以下代码:

tabHost := ManualTabDock( ctrl, newDocFm1,  newDocFm2);

JVCL对接服务器组件只能接受面板作为对接位置,可以是内置面板,也可以是您在设计时放置在表单上的自定义TPanel。不过,如果您愿意,绝地对接库将为您创建页面控件。但是,它必须是管理它们的人,因为这些控件可能会被移动(通过您或其他一些jvdocking代码)

因此,如果您想让一些选项卡可见,您不应该尝试使用自己的页面控件,而是应该使用JVCL随附的停靠代码演示作为示例,位于文件夹JVCL\examples\JvDocking\DockingInCode

以下是JvDocking系统为您制作的选项卡的外观,使用
CustomDockPanel
将自定义dock面板连接到TPanel,然后JvDocking在您需要时自动为您“创建页面控件”:

请注意,页面是由停靠系统创建或销毁的,管理选项卡的底层工作是由JvDocking库完成的,而不是由您完成的

您需要做的主要事情是使用MainFm.pas中的以下代码:

tabHost := ManualTabDock( ctrl, newDocFm1,  newDocFm2);

在stackoverflow上还有一些其他有趣的JvDocking内容:在stackoverflow上还有一些其他有趣的JvDocking内容:P->首先感谢Warren这么快的回答:我再次下载了jvcl对接库的示例,下面是这样一件事:我在delphi xe2中编译了上面的项目,这就是我要做的单击tabdock按钮时获取:“ManualTabDock:Ttabhost未创建。您的停靠样式可能不支持选项卡式停靠”。你还有一个很好的对接库可以帮我做同样的事情吗?绝地VCL附带了与Tab对接一起使用的对接样式。您的问题是您没有将停靠样式组件放置到窗体上。如果我们有任何文档(抱歉!没有太多),您可以阅读文档,但是如果您遵循示例,并注意到停靠样式JvDockVIDStyle和其他各种样式都支持选项卡停靠。使用停靠代码演示作为起始代码。肯定它在XE2中工作,我刚刚测试过它;我已经从JvDocking打开了名为Docking_in_Code的项目:左对齐面板中的所有选项(同级DOck、Cojoined DOck)都在工作,但当我单击Tab DOck时,我收到的消息是“ManualTabDock:Ttabhost not created.您的停靠样式可能不支持选项卡式停靠”-您的上方的图片。可能问题在于:我只安装了xe2的update2;我应该改为安装update4吗?很可能您有一个无效或非常旧的JVCL副本。如果没有,那么问一个新问题。P->首先感谢Warren这么快的回答:我再次下载了jvcl对接库的示例,事情是这样的:我在delphi xe2中编译了上面的项目,这是我单击tabdock按钮时得到的结果:“ManualTabDock:Ttabhost未创建。您的对接方式可能不支持选项卡式对接。您是否有其他好的对接库可以帮助我做同样的事情?与选项卡式对接一起使用的对接方式包含在绝地VCL中。您的问题是您没有在表单上添加对接方式组件。如果我们有文档,您可以阅读(抱歉!没有太多文档)但是如果您按照示例进行操作,并注意到对接样式JvDockVIDStyle和其他各种类型的所有支持选项卡都是对接的。请使用代码中的对接演示作为您的起始代码。它肯定在XE2中工作,我刚刚测试过它。P-->您好,Warren;我已经从JvDocking打开了名为“对接中的所有选项”的项目:左对齐面板中的所有选项(同级驳接、Cojoined驳接)正在工作,但当我单击Tab驳接时,会收到消息“ManualTabDock:Ttabhost not created。您的驳接样式可能不支持选项卡式驳接“-上面的图片。问题可能是:我只安装了xe2的update2;我应该改为安装update4吗?很可能您的JVCL副本无效或非常旧。如果没有,请询问新的问题。”