Einzelnen Beitrag anzeigen

Benutzerbild von Nalincah
Nalincah

Registriert seit: 18. Jul 2003
898 Beiträge
 
Delphi 6 Professional
 
#1

ControlCount = 5, ComponentCount = 0. Unterschied?

  Alt 18. Feb 2004, 11:21
Dieser Code ist in der Kompo TPanelVerschieben (abgeleitet von TPanel)

Delphi-Quellcode:
for i := 0 to TPanelVerschieben(Self).ComponentCount - 1 do
begin
  ...
end;
Auf dem Panel sind 5 TLabel-Kompos. ComponentCount müsste doch eigentlich jetzt den Wert 5 haben. Ist aber leider 0.


Mit

Delphi-Quellcode:
for i := 0 to TPanelVerschieben(Self).ControlCount - 1 do
begin
  ...
end;
klappt es, aber ich will dann auch immer direkt auf das Label zugreifen:

Delphi-Quellcode:
for i := 0 to TPanelVerschieben(Self).ControlCount - 1 do
begin
  // Wenn Komponente = TLabel
  if Self.Controls[i] is TLabel then // <<--- Klappt nicht!!!!
  begin
    // Dann füge in ListBox Eintrag mit "Top" und "Name" hinzu ("235;Label1)
    Posi.Items.Add(IntToStr(TLabel(Self.Components[i]).Top) + ';' + TLabel(Self.Components[i]).Name)
  end;
end;
Nur mit Control[i] geht das nicht. Mit Components[i] gehts schon, aber das ist ja 0. Was mach ich nun???
Sebastian
Ehemals bekannt als General2004
  Mit Zitat antworten Zitat