Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi create(AOwnerNochNichtDeclarierteComponente); (https://www.delphipraxis.net/10525-create-aownernochnichtdeclariertecomponente-%3B.html)

SirThornberry 20. Okt 2003 15:17


create(AOwnerNochNichtDeclarierteComponente);
 
ich will eine Object erstellen dessen owner eine Componente ist die aber erst später declariert wird.

Delphi-Quellcode:
  {...]
  TirgendwasItem = class(TWinControl)
  public
    constructor Create(AOwner: TIrgendwasListe); override;
  end;
  [...]

  TirgendwasListe = class(TWinControl)
  private
    items: Array of TirgendwasItem;
Und jetzt kommt bitte nicht damit das ich "TirgendwasListe" vor "TirgendwasItem" definieren soll denn da kommt das gleiche zu stande weil "Tirgenwasliste" ja "IirgendwasItem" beinhaltet.

Wie kann ich das lösen??

sakura 20. Okt 2003 15:20

Re: create(AOwnerNochNichtDeclarierteComponente);
 
Rot sind die Geheimnisse ;-)
Code:
  [...]
  [color=#ff001b]TirgendwasListe = class;[/color]
  TirgendwasItem = class(TWinControl)
  public
    constructor Create(AOwner: TIrgendwasListe); override;
  end;
  [...]

  TirgendwasListe = class(TWinControl)
  private
    items: Array of TirgendwasItem;
...:cat:...

SirThornberry 20. Okt 2003 15:33

Re: create(AOwnerNochNichtDeclarierteComponente);
 
der bringt mir jetzt die Meldung
"Declaration of 'Create' differs from previous declaration;
Diese Meldung kommt sobald der Constructor von dem von TWinControl abweicht.
Kkann ich nur
create(AOwner: TComponent)
benutzten wenn ich die neue klasse von TWinControl ableite oder gibts irgend ne möglichkeit das ich auch
Create(AOwner: TImage)
oder
Create(AOwner: TIrgendwasListe)
nehmen kann??


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz