Stimmt an die Ereignisse habe ich gar nicht gedacht. 8) Du meinst so ungefähr ?
Delphi-Quellcode:
procedure TfrmNrEin.sgNrSetEditText(Sender: TObject; ACol,
ARow: Integer; const Value: String);
begin
with Sender as TStringGrid do begin
if (length (value) * Font.Size) >= ColWidths [ACol] then begin
Cells [ACol,ARow] := copy (value,1,length (value)-1);
end;
end;
end;
Damit kriege ich jetzt nur noch so viele Zeichen in eine Zelle, wie auch reinpassen, also so wie gewollt. Der Haken ist aber, daß durch das direkte Zuweisen des neuen Wertes an Cells diese Zelle anscheinend neu gezeichnet wird und auch als selected markiert wird (also blau hinterlegt ist). Und das bedeutet, daß die vorherige Eingabe bei einem weiteren Zeichn zuviel gelöscht wird. Das kann ich so keinem DAU zumuten.