Hallo,
ich hab mich gestern noch an dieses Problem gewagt und hab folgendes gemacht:
Delphi-Quellcode:
procedure TForm2.StringGridKeyPress(Sender: TObject; var Key: Char);
var
Zeile : Integer;
Spalte: Integer;
begin
with StringGrid do
begin
//
Zeile := Selection.Top;
Spalte := Selection.Left;
If not (Key in ['a'..'z', 'A'..'Z', '0'..'9', #8, #32]) then
exit;
If Key = #8 then
begin
If (Pred(Spalte) > 0) then
Spalte := Spalte - 1
else
If (Spalte = 1) and (Zeile > 1) then
begin
Zeile := Zeile - 1;
Spalte := 40;
end;
StringGrid.Cells[Spalte, Zeile] := '';
StringGrid.Col := Spalte;
StringGrid.Row := Zeile;
exit;
end;
If (Zeile > 0) and (Spalte > 0) then
begin
StringGrid.Cells[Spalte, Zeile] := Key;
If Spalte < 40 then
StringGrid.Col := Spalte + 1
else
If Zeile <= 3 then
begin
StringGrid.Col := 1;
StringGrid.Row := Zeile + 1;
end;
end;
end;
end;
Die Option "goEditing" hab ich wieder auf false gesetzt - brauch ich ja jetzt nicht mehr!
Jetzt hab ich nur noch das Problem, dass ich auf die "Entf"-Taste u. a. reagieren muss, aber dazu siehe meinen anderen Thrad
mfg
Helmi
>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<