Folgenden Code verwende ich, um die Hintergrund/Vordergrundfarbe eines gauges zu ändern (je nach Progress)
Delphi-Quellcode:
Gauge.Progress := Gauge.Progress + 1;
if Gauge.Progress > 20 then
begin
// vorher clBtnFace
Gauge.BackColor := $0002FDCB;
Gauge.ForeColor := $0002FDCB;
end;
if Gauge.Progress > 40 then
begin
// vorher clBtnFace
Gauge.BackColor := $0000B3FF;
Gauge.ForeColor := $0000B3FF;
end;
if Gauge.Progress > 60 then
begin
// vorher clBtnFace
Gauge.BackColor := $000079FF;
Gauge.ForeColor := $000079FF;
end;
if Gauge.Progress > 80 then
begin
// vorher clBtnFace
Gauge.BackColor := $000053FF;
Gauge.ForeColor := $000053FF;
end;
if Gauge.Progress > 100 then
begin
// vorher clBtnFace
Gauge.BackColor := clRed;
Gauge.ForeColor := clRed;
end;
1. Ja es geht schöner, mit else und so, aber ich habs jetzt zum testen mal so gemacht
2. Bei wechseln der Farbe flackert das immer so schlimm.
Kann man das nicht "sanfter" machen?