Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - mit components[x] eine eigenschaft zuweisen


terco - Di 03.09.02 23:00
Titel: mit components[x] eine eigenschaft zuweisen
hallo,

wie kann ich einer komponente der komponentenliste eine eigenschaft zuweisen, wenn ich nur den componentindex kenne?? delphi sagt bei 'components[x].top := 250' immer, daß 'top' ein undefinierter bezeichner ist.


Beispiel:


Quelltext
1:
2:
3:
4:
5:
6:
7:
for i := 0 to componentcount - 1 do
    begin
      if components[i] is tbutton then
        begin
          components[i].top := 123;
        end;
    end;

danke für antworten....[/code]


Tino - Mi 04.09.02 00:22

Weil Components [x] Dir ein Ergebnis vom Type TComponent zurückliefert und tComponent nun mal keine Eigenschaft Top hat.

Du kannst dem Compiler aber "sagen" das es sich nicht um tComponent sondern z.B. um ein tButton handelt:

Quelltext
1:
2:
3:
For i := 0 To ComponentCount - 1 Do
  If Components[i] Is tButton Then
    tButton (Components[i]).Top := 123;

Gruß
TINO


terco - Mi 04.09.02 16:28

danke für die hilfe, klappt wunderbar...