Delphi-Quellcode:
procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var payback,i,multip:integer;
begin
if RadioButton1.Checked then multip:=1 else multip:=2;
If (ACol>=3) and (ACol<11) then
begin
try
payback:=StrToInt(StringGrid1.Cells[ACol+1,ARow]);
except
payback:=0;
end;
If payback>=150*multip then
begin
StringGrid1.Font.Color := clgreen;
// StringGrid1.Canvas.FillRect(Rect);
end
else if (payback<150*multip) and (payback>=120*multip) then
begin
StringGrid1.Font.Color := clolive;
// StringGrid1.Canvas.FillRect(Rect);
end
else if (payback<120*multip) and (payback>=90*multip) then
begin
StringGrid1.Font.Color := clred;
// StringGrid1.Canvas.FillRect(Rect);
end
else StringGrid1.Font.Color:=clBlack;
end
else StringGrid1.Font.Color:=clblack;
If (Acol=12) and (arow=20) then StringGrid1.OnDrawCell:=nil; //Versuch, dass neuzeichnen zu verbieten
end;
Eigentlich setze ich nur die Textfarbe oder?
Der Versuch der Unterbindung (Kommentar im Code) wird beim Buttonklick dann wieder erlaubt:
StringGrid1.OnDrawCell:=StringGrid1DrawCell;