カスタム ハンドリングを作成するために、TEdit OnKeyDown ハンドラを作成しCtrl+BkSpました。私の例では、最後の 2 文字を削除します。悪い動作が見られます: 私のコードの後に "square" char がテキストに追加されました。そのような正方形を「追加」しない方法は?
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key=vk_back) and (shift=[ssCtrl]) then
begin
with edit1 do
begin
if text<>'' then
text:= Copy(text, 1, length(text)-2);
selstart:= length(text);
end;
key:= 0;
Exit
end;
end;