Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > RichEdit


Автор: CHERRY 16.4.2007, 21:20
Как узнать в каком состоянии находится RichEdit - вставки или замены ?

Автор: VaiMR 16.4.2007, 21:46
можно читать нажатия клавиш и SelLength приравнивать к 1, это заставит перерисовывать текущий символ:

Код

...
InsertOn : bool;
...
procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Key = VK_INSERT) and (Shift = []) then
    InsertOn := not InsertOn;
end;
procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
  if ((Memo1.SelLength = 0) and (not InsertOn)) then
    Memo1.SelLength := 1;
end;


этот способ работает также для TEdit и TMemo, а в RichEdit возможно есть и что то стандартное.

Автор: CHERRY 16.4.2007, 22:40
В RichEdit поддерживается вставка и замена.
Но как узнать в каком состоянии он в данный момент.
Нужно знать заранее, что произойдет, когда начнем набирать текст:
будет текст вставляться или перезаписываться?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)