Einzelnen Beitrag anzeigen

Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.765 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: [strg] + [backspace] (TEdit)

  Alt 8. Dez 2009, 10:57
Na also jetzt leg mal alles zusammen (also Deinen Code und Deddys, und meine Idee) Und korrigiere eine Kleinigkeit (in Deddys Code nicht mir #8 sondern mit #0 ersetzen). Und schon gibt es das gewünschte Ergebnis:

Delphi-Quellcode:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (Key = VK_BACK) and (shift = [ssctrl] )then
  begin
    TEdit(Sender).Text := Copy(TEdit(Sender).Text, 1, BackstepPosition(TEdit(Sender).Text));
    TEdit(Sender).SelStart := Length(TEdit(Sender).Text);
  end;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
   if Key = #127 then
    Key := #0;
end;


Sieht einfach aus

Edit: alternativ kannst Du auch die Ersetzung durch #8 lassen, musst dann aber im KeyDown noch ein beliebiges Zeichen dem Edit-Text hinzufügen, das dann im KeyPress gelöscht wird

Sherlock
Oliver
  Mit Zitat antworten Zitat