如何把一个窗体嵌入到另一个窗?

nanyankaoran 2009-05-05 03:07:41
有二个窗体,form1和form2我已设窗体2的二个属性dkdock,dmautomatic;
procedure TForm1.Button1Click(Sender: TObject);
var
rect1:TRect ;
begin
if not form2.Visible then
begin
if not Panel1.Visible then
Panel1.Show ;
Form2.Visible :=True ;
rect1 :=Panel1.ClientRect ;
Form2.Dock(Panel1,rect1 );
Panel1.DockManager.InsertControl (Form2 ,alclient,Form2 );

end
else
begin
Panel1.Hide ;
Form2.Visible :=False ;
end;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
Button1Click(Sender);
end;
为什么还是出错?如何的设一下
...全文
130 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bdmh 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 nanyankaoran 的回复:]
上面的那样的为什么不行
[/Quote]

你需要设置Panel1.DockSite := True,否则DockManager为空
bdmh 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 nanyankaoran 的回复:]
上面的那样的为什么不行
[/Quote]
DockManager为空,自己跟一下看看吧
nanyankaoran 2009-05-05
  • 打赏
  • 举报
回复
上面的那样的为什么不行
bdmh 2009-05-05
  • 打赏
  • 举报
回复

这样写就行
Form2.Align := alClient;
Form2.Parent := Panel1;
byteh 2009-05-05
  • 打赏
  • 举报
回复
个人认为,做成Frame比较好
bdmh 2009-05-05
  • 打赏
  • 举报
回复
DockManager为空
lhy 2009-05-05
  • 打赏
  • 举报
回复
把Form2做成Frame吧。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧