Entwickler-Ecke

Sonstiges (Delphi) - Mit Variabel bestimmtes Label wählen


Kompost - So 13.05.07 10:39
Titel: Mit Variabel bestimmtes Label wählen
Hi, hab da ein kleines Problem wo ich nicht weiterkomme wäre super wenn mir da jemand hilft :)


Ich hab z.B. folgende Label

Label1
Label2
Label3
Label4
Label5

Alle sind unsichtbar. Also bei Form1 steht "Label1.visible := false u.s.w."

Jetzt hab ich aber z.B. ne Variabel i und möchte ein schleife z.B. von i <= 4 laufen lassen und jedes mal das nächste label sichtbar machen. wenn i auf 1 steht also Label1 .... Label4

wie mach ich das dann das ich am beim label nicht immer die zahl hinten dran hänge sondern die variabel ahbs schon mit

Label(i).visible := true;
Label[i].visible := true;

versucht aber das klappt nicht

wäre nett wenn mir jemand helfen könnte :)


jakobwenzel - So 13.05.07 10:47

Die Forumssuche bringts, die Frage kommt so ungefähr täglich :wink:

Suche in: Delphi-Forum, Delphi-Library FINDCOMPONENT ist das Stichwort.


Lannes - So 13.05.07 10:49

Hallo,

noch ein paar Stichworte:
Controls[x], ControlCount
Components[x], ComponentCount
Array [0..x] of TLabel


Kompost - Di 15.05.07 12:56

Das Problem ist leider immernoch nicht gelöst. Ich habe mir Beiträge im Forum angeschaut und folgende Möglichkeiten ausprobiert:


Delphi-Quelltext
1:
2:
Label(Self.Components[i]).caption := chr(wortteile[i]); 
Label(FindComponents[i]).caption := chr(wortteile[i]);


auch was in der delphi hilfe steht bringt einen als absoluten anfänger nicht wirklich weiter


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
procedure TForm1.Button1Click(Sender: TObject);

var
  i: Integer;
const
  NamePrefix = 'MyEdit';
begin
  for i := 1 to 20 do begin
    TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
    with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
    begin
      Left := 10;
      Top := i * 20;
      Parent := self;
    end;
  end;
end;


Wäre nett wenn mir das jemand genauer erklären könnte.
Vielen Dank im vorraus :)

Moderiert von user profile iconUGrohne: Quote- durch Delphi-Tags ersetzt


GTA-Place - Di 15.05.07 12:58


Delphi-Quelltext
1:
TLabel(FindComponent('Label' + IntToStr(I))).Caption := 'Blup';                    


Kompost - Di 15.05.07 13:15

Vielen Dank jetzt klappts :)