2

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

procedure Tform1.FormCreate(Sender: TObject);  
begin  
  jvdockserver1.CustomDockPanel := jvpagecontrol1;  
end;  

你能帮帮我吗?忘了说我是编程新手,我使用的是 Delphi XE2;

4

1 回答 1

0

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

所以,如果你想让一些标签可见,你不应该尝试使用你自己的页面控件,而应该使用 Docking In Code Demo 作为你的示例,它与 JVCL 一起在文件夹中jvcl\examples\JvDocking\DockingInCode

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

在此处输入图像描述

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

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

tabHost := ManualTabDock( ctrl, newDocFm1,  newDocFm2);
于 2012-03-27T18:21:18.960 回答