Aus Erfahrung hab ich gelernt, daß das Übereinanderlegen von Groupboxen o.ä. während der Designtime zum Desaster führt, da die Formelemente sich gegenseitig überlagern. Seitdem bevorzuge ich für jeden Treevieweintrag ein eigenes Form, das ich dann einfach in einem dafür vorgesehenem Panel darstellen lasse. Die einzelnen Forms an sich sind dann sehr übersichtlich in der
IDE zu handhaben... Hier noch kurz der Code zum Darstellen einer Form in einem Panel:
Delphi-Quellcode:
procedure TfrmMain.ChangeModule (ModuleNum : integer) ;
var
NewDemoClass: TFormClass;
NewDemo: TForm;
begin
case ModuleNum of
1: NewDemoClass := TForm1;
2: NewDemoClass := TForm2;
{ usw. für alle anderen Forms }
else
NewDemoClass := nil;
end;
{ panContainer = TPanel }
if (panContainer.ControlCount = 0) or not (panContainer.Controls[0] is NewDemoClass) then
begin
if panContainer.ControlCount > 0 then
panContainer.Controls[0].Free;
if Assigned(NewDemoClass) then
begin
NewDemo := NewDemoClass.Create(Self);
NewDemo.Hide;
NewDemo.BorderStyle := bsNone;
NewDemo.Parent := panContainer;
NewDemo.Align := alClient;
NewDemo.Show;
end;
end;
end ;