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 ControlCount = 5, ComponentCount = 0. Unterschied? (https://www.delphipraxis.net/16513-controlcount-%3D-5-componentcount-%3D-0-unterschied.html)

Nalincah 18. Feb 2004 11:21


ControlCount = 5, ComponentCount = 0. Unterschied?
 
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???

mirage228 18. Feb 2004 12:20

Re: ControlCount = 5, ComponentCount = 0. Unterschied?
 
Du musst SetSubcomponent im Label-Contructor aufrufen (ein Beispiel findest du im Source von TLabeledEdit) und dem Label (im Panel-Code) das Panel als .Parent zuweisen.
Dann sollte es gehen.

mfG
mirage228

Christian Seehase 18. Feb 2004 16:52

Re: ControlCount = 5, ComponentCount = 0. Unterschied?
 
Moin Sebastian,

wo benutzt Du dass denn?
Self enthält immer die Adresse des Objektes in dessen Methode es benutzt wird.


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