Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TPanel.Create im CollectionItem constructor (https://www.delphipraxis.net/89346-tpanel-create-im-collectionitem-constructor.html)

EarlyBird 29. Mär 2007 22:50


TPanel.Create im CollectionItem constructor
 
Hallo,
ich habe eine Komponente von einem TPanel abgeleitet.
Im Create erstelle ich unter anderem noch eine Scrollbox auf dem Panel.
Die Komponente enthält eine Eigenschaft vom Typ TOwnedCollection.

Das TCollectionItem enthält eine Eigenschaft vom Typ Tpanel.

Wie kann ich nun, sobald der Collection ein Item hinzugefügt wird ein Panel erstellen und als Parent des Panels die Scrollbox zuweisen.

(PanelX1.Parent = Scrollbox so einfach geht es nicht)

Ich möchte für jedes CollectionItem ein Panel in der Scrollbox erstellen und das Panel dem CollectionItem zuweisen.

Vielen Dank für Eure Hilfe

mkinzler 30. Mär 2007 06:48

Re: TPanel.Create im CollectionItem constructor
 
-Panel neu erzeugen
-Parent und sonstige Eigenschaften setzen
-Neues Item in Collection erzeugen
-Diesem den Panel zuweisen

EarlyBird 30. Mär 2007 08:16

Re: TPanel.Create im CollectionItem constructor
 
Danke für die Antwort,
Wie bekomme ich es hin das das Panel "automatisch" erzeugt wird.
So das ich ein Item zur Collection hinzufüge und dann das Panel erzeugt wird.

Ich dachte ich könnte es irgendwie im constructor von Create Item machen.
Aber da kann ich nicht Panel.parent := Scrollbox setzen da die Scrollbox hier nicht bekannt ist.

mkinzler 30. Mär 2007 08:17

Re: TPanel.Create im CollectionItem constructor
 
Überlade dir doch einen Konstruktor der den Parent als weiteren Parameter besitzt.

EarlyBird 30. Mär 2007 08:41

Re: TPanel.Create im CollectionItem constructor
 
Wow blitzschnelle Antwort
Danke.

Wie Überlade ich den constructor und gebe den Parent als Parameter mit?
Kannst Du mir bitte eine kurze Codezeile als Beispiel geben!?!?

Vielen Dank für Deine Mühe


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:23 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