Einzelnen Beitrag anzeigen

Sushibb

Registriert seit: 28. Jul 2004
13 Beiträge
 
Delphi 6 Personal
 
#3

Re: StringGrid nicht neuzeichnen

  Alt 10. Jul 2005, 13:38
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;
  Mit Zitat antworten Zitat