AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Problem bei eigener Komponente: Kein übergeordnetes Fenster
Thema durchsuchen
Ansicht
Themen-Optionen

Problem bei eigener Komponente: Kein übergeordnetes Fenster

Ein Thema von Ares · begonnen am 16. Okt 2008 · letzter Beitrag vom 16. Okt 2008
Antwort Antwort
Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#1

Problem bei eigener Komponente: Kein übergeordnetes Fenster

  Alt 16. Okt 2008, 12:39
Hallo!

Ich versuche mich gerade daran eine eigene kleine Komponente zu entwickeln. Eigentlich geht es nur darum auf einem Panel verschiedene andere Komponenten unterzubringen (Labels, ComboBox, Button) und das gemeinsame Verhalten zu steuern.

Dazu habe ich meine Komponente also von TCustomPanel abgeleitet und wollte nun im Constructor die weiteren Komponenten erzeugen und auf dem Panel platzieren. Bei den Labels klappt das prima, aber bei der ComboBox erhalte ich einen Fehler:

Delphi-Quellcode:
type
  TCompPanel = class(TCustomPanel)
  private
    FInfoLabel : TLabel;
    FComboBox : TComboBox;
  public
    constructor Create(AOwner: TComponent); override;
  end;

...

constructor TCompPanel .Create(AOwner: TComponent);
begin
  inherited;
  height := 50;
  width := 250;
  caption := '';

  FInfoLabel := TLabel.Create(self);
  FInfoLabel.Parent := self;
  FInfoLabel.Top := 5;
  FInfoLabel.Left := 5;
  FInfoLabel.Caption := 'Info';

  FComboBox := TComboBox.Create(self);
  FComboBox.Parent := self;
  FComboBox.Top := 5;
  FComboBox.Left := 150;
  //FActionComboBox.Items.Clear;
  //FComboBox.Items.Add('Keine Rücksicherung');
end;
In dieser Form funktioniert alles prima. Aktiviere ich aber die letzten beiden Zeilen mit der die Items der ComboBox gelöscht und dann befüllt werden, erhalte ich den Fehler:

Zitat:
EInvalidOperation
Element '' hat kein übergeordnetes Fenster.
Was mache ich hier falsch? Ich habe der ComboBox doch das Panel als Parent-Komponente zugewiesen?

Herzlichen Dank für eure Hilfe!
Ares
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Problem bei eigener Komponente: Kein übergeordnetes Fens

  Alt 16. Okt 2008, 12:42
Hi,

im Constructor gibt es noch keinen zugewiesenen Parent. Benutze und überschreibe CreateWnd. Die ist protected und virtual.

Gruß oki
42
  Mit Zitat antworten Zitat
Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#3

Re: Problem bei eigener Komponente: Kein übergeordnetes Fens

  Alt 16. Okt 2008, 14:15
Vielen Dank für den Hinweis!
  Mit Zitat antworten Zitat
Antwort Antwort


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 05: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