![]() |
Frame mehrfach dynamisch erzeugen
Ich habe folgendes Problem:
Ich möchte ein Frame dynamisch zur Laufzeit mehr fach auf meinem Formular platzieren. Der Code sieht in etwa so aus:
Delphi-Quellcode:
Der erste Schleifen durchlauf klappt prima. Im zweiten wir der Splitter erzeugt aber dann an der Create-Aneisung kommt
for i := 0 to xCount - 1 do begin
if i > 0 then begin mysplitter := TRXSplitter.Create(self); mysplitter.Parent := self; mysplitter.Align := alTop; xSplitter.Add(mySplitter); end; myFrame := TFRameDataGridOne.Create(self); // Hier gibts Ärger :-) myFrame.Parent := self; myFrame.Visible := true; myFrame.Width := self.Width; //3 = height der Splitter myFrame.Height := (self.Height - (xCount-1) * 3) div xCount; myFrame.Align := alTop; myFrame.DBGrid1.DataSource := myReportDetail.Query.MyDataSource; xFrames.Add(myframe); end; Komponente FrameDataGridOne existiert bereits. Wenn ich das Frame zur designzeit 3 mal reinlege gehts aber... Wer weiss einen Trick? [edit=SirThornberry]Delphi-Tags gesetzt - nächstes mal bitte selbst machen :-) Mfg, SirThornberry[/edit] |
Re: Frame mehrfach dynamisch erzeugen
Is vielleicht blödsinn, aber was passiert wenn du den Pointer auf die Komponente vorher wieder auf NIL setzt, bevor du ihn neu erzeugst?
|
Re: Frame mehrfach dynamisch erzeugen
Wenn Du die Kompos dynamishc erzeugst, wird der Name nicht durchnummeriert.
Setz nochmal den Namen des Frames fortlaufend. Gruß Frank |
Re: Frame mehrfach dynamisch erzeugen
na manches ist doch so einfach....
es fehlt nur myframe.Name = 'MeinFrame' + inttostr(i); danke für Euer Mitleiden :-) |
Re: Frame mehrfach dynamisch erzeugen
wozu weißt du überhaupt einen Namen zu?
|
Re: Frame mehrfach dynamisch erzeugen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz