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 Label??.Caption (https://www.delphipraxis.net/104995-label-caption.html)

Fritz01 13. Dez 2007 20:58


Label??.Caption
 
Hallo,
in einer while-Schleife wird bei jeden Durchlauf ein Name gesucht und gefunden. Diese Namen sollen einem Label übergeben werden. Die Label sind in einer Form vordefiniert von Label1 bis Label65.
Es soll so sein, dass beim 1. Duchlauf der Name in Label1.Caption, beim 2. Durchlauf in Label2.Caption usw. abgelegt wird. Wie kann ich das realisieren? Mehrfache Versuche blieben bisher Erfolglos.
Fritz

mkinzler 13. Dez 2007 21:00

Re: Label??.Caption
 
Such mal nach .FindComponent()

SirThornberry 13. Dez 2007 21:04

Re: Label??.Caption
 
das sinnvollste wäre die Labels dynamsich zu erstellen und in einem Array anzusprechen.

Fritz01 13. Dez 2007 21:56

Re: Label??.Caption
 
Hallo,
danke für die superschnellen Antworten.

@ mkinzler,
habe erst mal nach .FindComponent() in der DH geschaut. Da gibts ja auch ein Beispiel. Analog dazu habe ich

Delphi-Quellcode:
Const
Name = 'lbl';
und um zu sehen was dabei herauskommt

Delphi-Quellcode:
ShowMessage(TLabel(FindComponent(Name + IntToStr(i))));
in mein Prog eingefügt.
Es erscheint die Fehlermeldung: Inkompatible Typen 'String und TLabel'
Was habe ich da falsch gemacht?

Fritz

ste_ett 13. Dez 2007 22:01

Re: Label??.Caption
 
ShowMessage() erwartet einen String. :)

Delphi-Quellcode:
ShowMessage(TLabel(FindComponent(Name + IntToStr(i))).Caption);

DeddyH 13. Dez 2007 22:01

Re: Label??.Caption
 
Delphi-Quellcode:
for i := 1 to 65 do
  TLabel(FindComponent('Label' + inttostr(i))).Caption := Name[i];
Wobei ich davon ausgehe, dass Name ein Array, eine StringList o.ä. ist. Sollte es nur eine einfache Variable sein, das [i] einfach weglassen ;)

[edit] Da war wieder jemand schneller ;) [/edit]

dominikkv 13. Dez 2007 22:01

Re: Label??.Caption
 
Delphi-Quellcode:
ShowMessage((FindComponent('Label' + IntToStr(i))as TLabel).Caption);
edit: hehe... suchs dir aus xD

Fritz01 13. Dez 2007 22:52

Re: Label??.Caption
 
@ all,
danke Euch für die schnellen und hilfreichen Antworten, habt mir super geholfen, es läuft.
FindComponent war mir unbekannt, bin kein Profi sondern ein ewiger Anfänger und um jede Hilfe sehr dankbar. Man lernt immer noch dazu!

Wünsche Euch noch eine schöne Adventszeit, ein besinnliches Weihnachtfest und einen guten Rutsch ins Neue Jahr.

Fritz

DP-Maintenance 14. Dez 2007 06:36

DP-Maintenance
 
Dieses Thema wurde von "SirThornberry" von "Datenbanken" nach "VCL / WinForms / Controls" verschoben.


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