Sollte man noch erwähnen:
Wenn der Benutzer während der Eingabe eine andere Zelle markiert dann wird ja kein SetEditText ausgelöst.
Eine Lösung wäre das selektieren einer anderen Zelle zu unterbinden während der Benutzer noch den Wert verändert:
Delphi-Quellcode:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if TStringGrid(Sender).EditorMode then
CanSelect:=false;
Dann muss der Benutzer erst Enter drücken, die Eingabe damit beenden und mit
Delphi-Quellcode:
procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol,
ARow: Integer; const Value: String);
begin
if not TStringGrid(Sender).EditorMode then
ShowMessage(Format('%d / %d : "%s"', [ACol, ARow, Value]));
end;
kann man dann darauf reagieren.
Ich hoffe das klappt jetzt auch endlich^^