Форум: "WinAPI";
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];
ВнизВставка/замена в TEdit Найти похожие ветки
← →
Юрий Зотов (2001-09-16 08:23) [2]За абсолютную правильность не ручаюсь (писал "с ходу"), но должно работать.
type
TForm1 = class(TForm)
Edit1: TEdit;
procedure Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
FOwerwrite: boolean;
end;
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Shift = []) and (Key = VK_INSERT) then FOwerwrite := not FOwerwrite
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
S: string;
OldPos: integer;
begin
with Edit1 do
if FOwerwrite and (Ord(Key) > 31) and (SelStart < Length(Text)) and (SelLength = 0) then
begin
S := Text;
OldPos := SelStart;
S[SelStart + 1] := Key;
Key := #0;
Text := S;
SelStart := OldPos + 1
end
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];
Память: 0.43 MB
Время: 0.004 c