Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#9

Re: Bei dyn. erzeugten Labels die Text Farbe ändern

  Alt 23. Nov 2005, 16:22
Hi,
wenn du nur zwischen zwei Labels hin und her wechselst (also es immer nur ein rotes gibt und das letzte rote schwarz wird), dann brauchst du nur eine globale Variable (also Klassenvariable geht bei klassen-methoden natürlich auch).
Dort speicherst du dein aktuell gewähltes Label (das, dass rot ist).
Wenn du nun auf ein Label klickst, machst du etwas wie
Delphi-Quellcode:
var redLabel : TLabel; // Kein Jonny W., sondern die globale Var
...
...
begin
  if assigned(redLabel) then
    begin
      redLabel.Font.Color := clBlack;
    end;
  if assigned(Sender) and (Sender is TLabel) then
    begin
      redLabel := Sender as TLabel;
      redLabel.Font.Color := clRed;
    end;
end;
Ansonsten ist es ein schönerer Weg ein TControlList statt einem Array zu benutzen

Gruß Der Unwissende
  Mit Zitat antworten Zitat