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 Auf Parent einer TCollection zugreifen (https://www.delphipraxis.net/113875-auf-parent-einer-tcollection-zugreifen.html)

Angel4585 16. Mai 2008 08:41


Auf Parent einer TCollection zugreifen
 
Hallo,

ich bastel immernoch an meiner Komponente.
Diese Komponente TMyKomponente hat jetzt eine TMyMenu Klasse die von TCollection abgeleitet ist.
Das TMyMenu beinhaltet TMyMenuItems die von TCollectionItem abgeleitet sind.

Jetzt muss ich im Konstruktor eines TMyMenuItem irgendwie an die TMyKomponente kommen zu der das TMyMenu des Items gehört.

Wie mache ich das? Es wird ja Die Collection übergeben, das klappt.
Aber das Owner Feld der Collection ist nil und Parent find ich nicht.

Hat jemand einen Tip?

:angel:

NickelM 16. Mai 2008 09:00

Re: Auf Parent einer TCollection zugreifen
 
Ich arbeite bei meinem Spiel auch mit TCollection.
Du musst nich von TCollection ableiten, wenn sich nicht daran ändert.

Du musst nur im Konstructor sagen
Delphi-Quellcode:
Collection := TCollection.Create(TMyMenuItems);
wenn du dan zugreifen willste musst du sagen
Delphi-Quellcode:
Collection.Add;
(Collection[0] as TMyMenuItems).Owner
Dann müsste es klappen so viel ich weis

Angel4585 16. Mai 2008 09:14

Re: Auf Parent einer TCollection zugreifen
 
So bekomm ich dann doch die Collection, ich will aber das Formular ;)

Also ich hab folgendes:

Code:
TForm1 = class(TForm)
    Panel1 : TPanel;
  private
    FCollection : TCollection;
  public
    Constructor Create(AOwner : TComponent);override;
  end;


Constructor TForm1.Create(AOwner : TComponent);
begin
FCollection := TCollection.Create(TCollectionItem);
FCollection.Add;
end;
Hab das mal von Hand hier reingetippt.
Und ich möchte jetzt quasi vom Konstruktor des TCollectionItem aus das Panel1 des Formulars ansprechen.

Angel4585 16. Mai 2008 09:59

Re: Auf Parent einer TCollection zugreifen
 
Habs jetzt so gelöst das ich meiner Collection eine Eigenschaft Formular gegeben habe, nach dem Create das Formular zuweise und dann im Konstruktor des CollectionItems auf das Formular zugreifen kann.


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