Moin DH,
schreibe in der ListBox, im ObjectInspector undter Items, folgende Begriffe: Nach jedem Enter!
BRAUN
ROT
BLAU
in der OnClick-Prozedur der ListBox, schreibst Du folgenden Code:
Delphi-Quellcode:
procedure TForm1.ListBox1Click(Sender: TObject);
var
i: integer;
begin
for i := 0 to ListBox1.Items.Count -1 do
begin
try
if ListBox1.Selected[i] then
begin
if ListBox1.Items.Strings[i] = 'BRAUN' then
begin
Label1.Color := clMaroon;
end
else if ListBox1.Items.Strings[i] = 'ROT' then
begin
Label1.Color := clRed;
end
else if ListBox1.Items.Strings[i] = 'BLAU' then
begin
Label1.Color := clBlue;
end;
end;
except
ShowMessage('Ein Fehler ist aufgetreten!');
end;
end;
end;
Bei jedem Click, nimmt das Label die jeweilige Farbe an. Und wenn man wieder auf die gleiche Farbe drauf klickt, dann bleibt die Farbe.
Btw: Deinen Code kannst Du gar nciht kompilieren, weil da ein end; gefehlt hat! Und was Du mit einem try..finally willst, ist auch nicht Klar, wenn da try..except, zum Fehler abfangen. Siehe Source.
Deine Probleme verstehe ich nicht, oder da stimmt was ganz anderes nicht.
Grüsse, Daniel