Einzelnen Beitrag anzeigen

Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#13

AW: Stringgrid OnCellChange ?

  Alt 25. Feb 2014, 20:34
Hallo,

Zitat:
[...] Das Ganze wäre besser dann durchzuführen, wenn der Editiervorgang beendet ist [...]
Würde ich auch so sehen - und wohl auch so machen -, aber Dein Problem erschließt sich mir nicht so ganz.

Zitat:
[...] Und mir fällt nun nichts ein, wo man da eingreifen könnte
Naja, wie wäre es denn mit OnDrawCell? Den entsprechenden Zustand vorher merken und beim Neuzeichnen aktualisieren:
Delphi-Quellcode:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
  if FModified and (ACol = FSaveCol) and (ARow = FSaveRow) then
    begin
      StringGrid1.Cells [ACol, ARow] := IntToStr (StrToInt (StringGrid1.Cells [ACol, ARow]) - StrToInt (FSaveValue));
      FModified := False
    end
end;

procedure TForm1.StringGrid1GetEditText(Sender: TObject; ACol, ARow: Integer; var Value: string);
begin
  FSaveCol := ACol;
  FSaveRow := ARow;
  FSaveValue := Value
end;

procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
begin
  FModified := FSaveValue <> Value
end;
Oder verstehe ich da was falsch?

Gruß
Volker Zeller
  Mit Zitat antworten Zitat