有二个窗体,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;
为什么还是出错?如何的设一下
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;
为什么还是出错?如何的设一下
这样写就行
Form2.Align := alClient;
Form2.Parent := Panel1;
你需要设置Panel1.DockSite := True,否则DockManager为空