在主窗体实现子窗体:在主窗体的panel上展开,并可自由拖动???
我想在主窗体实现子窗体以word形式打开(在主窗体的panel上展开)代码是这样的
begin
try
form2 := Tform.Create(Application);
form2.ManualDock(Panel1, nil, AlClient);
form1.show;
except
MessageBox(0, '窗体创建错误', '产生严重例外错误', MB_OK +
MB_ICONSTOP);
end;
end;
再在panel的ondockdrop事件上实现
procedure TBM_OFFICEF.Panel1DockDrop(Sender: TObject;
Source: TDragDockObject; X, Y: Integer);
var
i: integer;
begin
i := 0;
while (i <= Panel1.ControlCount - 1) and (Panel1.ControlCount > 1) do
begin
if Panel1.Controls[i] is TForm then
begin
Panel1.Controls[i].Free;
end
else
i := i + 1;
end;
end;
以上能使子窗体form2在主窗体panel展开,但是我想随意的拖动子窗体form2,从panel的界面上
跳出来,而不是老是粘在panel的界面上,该怎么实现?是不是还要写些什么代码??或者窗体
的属性做些修改??
谢谢!
问题点数:20、回复次数:2Top
1 楼ykui(城市星空)回复于 2006-03-10 14:25:17 得分 0
好象,分数给的不高,不是这个原因吧,自己先顶一下,Top
2 楼zzq4823(高原猫)回复于 2006-03-10 18:37:39 得分 20
form2.DragKind:=dkDock;
form2.DragMode:=dmAutomatic;Top




