AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

eigene Kompo -> div. Probleme unter Delphi9

Ein Thema von FriFra · begonnen am 14. Sep 2005 · letzter Beitrag vom 14. Sep 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#1

eigene Kompo -> div. Probleme unter Delphi9

  Alt 14. Sep 2005, 09:17
Ich habe eine Komponente von TCustomComboBox abgeleitet und habe nun plötzlich unter Delphi2005 (SP2) ein Problem... sobald ich die Komponente auf mein Form ziehe kommt die Meldung: Element '' hat kein übergeordnetes Fenster.

Codeauszug
Delphi-Quellcode:
type
  TFr_LocalMailComboBox = class(TCustomComboBox)
  private
    { Private-Deklarationen }
    ...
  protected
    { Protected-Deklarationen }
    ...
  public
    { Public-Deklarationen }
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    { Published-Deklarationen }
    ...
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('FriFra', [TFr_LocalMailComboBox]);
end;

constructor TFr_LocalMailComboBox.Create(AOwner: TComponent);
begin
  inherited;
  LocalMail := TFr_LocalMail.Create(Self);
  { Testcode }
  Showmessage('jetzt'); //Diese Message kommt noch
  Items.Add('Test'); //hier geht dann etwas schief... :?
  Showmessage('ok'); //Di Message kommt wegen des Fehlers nicht
  SetDefaults;
end;

destructor TFr_LocalMailComboBox.Destroy;
begin
  LocalMail.Free;
  inherited;
end;

...
Unter Delphi 5, 6 und 7 gibt es das Problem nicht
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#2

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 09:32
Kommt der gleiche Fehler auch, wenn du versuchst, den Items außerhalb des Konstruktors was hinzuzufügen?
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#3

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 09:39
Ja. Das mit den Items innerhalb des Construktor habe ich nur mal als Test eingefügt...


Im übrigen sollte die Komponente an sich an dieser Stelle schon erzeugt sein, da "inherited" schon abgearbeitet ist.
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#4

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:14
Weise mal dem LocalMail-Objekt, das scheinbar ja eine Komponente ist, n Parent zu... oder is das keine Komponente? Dann weiß ich nämlich auch nicht weiter...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat
n0b0dy

Registriert seit: 12. Sep 2005
Ort: Hessen
268 Beiträge
 
#5

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:26
hm, probiers doch mal so :

Delphi-Quellcode:
constructor TFr_LocalMailComboBox.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  .
  .
  //LocalMail := TFr_LocalMail.Create(Self);.//hierrauf würde ich verzichten, was soll das denn hier?
MfG
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#6

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:29
Das tue ich doch:
LocalMail := TFr_LocalMail.Create(Self); @n0b0dy:
Ich werds mal ändern und schaun was passiert

Auf das Erzeugen von "LocalMail"kann ich nicht verzichten, da ich diese Komponente während der gesamten Laufzeit meiner Komponente zwingend benötige. LocalMail ist quasi dei Kernkomponente, die ComboBox ist nur quasi ein Container um die Werte darzustellen
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
n0b0dy

Registriert seit: 12. Sep 2005
Ort: Hessen
268 Beiträge
 
#7

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:31
versteh ich nicht. du kannst doch in jeder prcoedure über Self daraufzugreifen. Sind ja dann im Objekt deklariert....
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#8

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:36
Zitat von n0b0dy:
versteh ich nicht. du kannst doch in jeder prcoedure über Self daraufzugreifen. Sind ja dann im Objekt deklariert....
Da versteh ich jetzt nicht was Du meinst ...
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#9

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:42
Ganz offensichtlich wird bei Items.Add versucht das Fenster zu malen.
Das geht aber schief, da die Fenster noch gar nicht existieren. Insbesondere Parent ist noch nicht gesetzt und hat auch noch kein Fenster.
Ueberschreibe Loaded oder AfterConstruction und mache es dort.
  Mit Zitat antworten Zitat
n0b0dy

Registriert seit: 12. Sep 2005
Ort: Hessen
268 Beiträge
 
#10

Re: eigene Kompo -> Element '' hat kein übergeordnetes Fe

  Alt 14. Sep 2005, 10:48
@FriFra :
so wie ich dich verstanden habe, willst du später über das LocalMail auf alles zugreifen. praktisch die Komponente an sich, oder!?
wenn ja, kann man sich das sparen. denn in jeder Procedure würde "Self" genau das bewirken, was du vor hast....



oder was willst du damit bewirken?


MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:35 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