Einzelnen Beitrag anzeigen

aayb

Registriert seit: 9. Jan 2008
14 Beiträge
 
#1

FindComponentes "TShape faerben"

  Alt 19. Nov 2008, 16:53
Hallo zusammen,

ich habe folgendes Problem beim "faerben" meiner Shapes:
Auf der Form liegen 10 Shapes, die mit dem Namen 'shpHeader' anfangen und danach nummeriert sind.
Also simple "shpHeader1", "shpHeader2", ...

Nun wollte ich mir nicht arbeit erleichetern und hab folgenden Code in die FormCreate gepackt:

Delphi-Quellcode:
procedure TfrmMain1.FormCreate(Sender: TObject);
var
  i : integer;
  ShapeName : String;
begin
  for i :=0 to ComponentCount -1 do begin
    ShapeName := 'shpHeader'+IntToStr(i);
    if (Components[i] is TShape) and (Components[i].Name = ShapeName) then
    begin
      TShape(Components[i]).Brush.Color := rgb(100,100,100);
    end;
  end;
end;
Das Problem? Es geht nicht.
Setze ich anstelle des Strings 'ShapeName' innerhalb der for-schleife einen festen Wert (Bspw. 'shpHeader2'), so wird dieser Shape gefaerbt.
Wenn ich nach der zuweisung des 'ShapeName' ein MessageDLG als "Debug" setze, wird mir auch immer der korrekte Name des Shapes zurueck geliefert.

Kann mir evtl einer einen Tip geben, wo mein Denkfehler sitzt?
Besten Dank schonmal

Gr.
aayb
  Mit Zitat antworten Zitat