Справочник по компонентам Delphi. Часть 2 - Ввод и редактирование текста
ОГЛАВЛЕНИЕ
Ввод и редактирование текста
В Палитру компонентов входят три компонента, позволяющие вводить и редактировать текст (далее — редактирующие элементы). На базе стандартного редактирующего элемента управления Windows построены два основных компонента — строка ввода TEdit и многострочный редактор TMemo. На базе первого из них для ввода данных по шаблону создан третий компонент — TMaskEdit.
В начале раздела опишем компонент TCustomEdit. Хотя вы не найдете его в Палитре компонентов, он является общим предком для трех доступных вам редактирующих элементов. Поэтому здесь рассмотрим только его свойства, общие для всех трех.
В отличие от других визуальных компонентов, у перечисленных в этой группе текст содержится не в свойстве Caption, а в свойстве Text:
property Text: TCaption;
TCaption = string[255];
Часть текста может быть выделена. Свойства
property SelStart: Integer;
property SelLength: Integer;
определяют начало и длину выделенного в редакторе текста (измеряемые в количестве символов). Сам выделенный текст содержится в строке, определяемой свойством:
property SelText: string;
Метод
procedure ClearSelection;
исключает из текста весь выделенный фрагмент, а метод
procedure SelectAll;
выделяет весь текст в редакторе. Доступны также рабочие методы по чтению/записи выделенного текста, которые используются свойством SelText:
function GetSelTextBuf(Buffer: PChar; BufSize: Integer): Integer;
procedure SetSelTextBuf(Buffer: PChar);
Они могут быть полезны для получения текста типа pChar, который применяется в функциях API Windows.
Текст можно передавать и принимать из буфера обмена Windows — для этого предназначены три следующих метода. Если в окне редактора выделен текст, то передается (заменяется) именно он. В противном случае в операции участвует весь текст:
procedure CopyToClipboard;procedure CutToClipboard;procedure PasteFromClipboard;
Очистить весь текст в редакторе можно при помощи метода:
procedure Clear;
Наконец, свойство
property Modified: Boolean;
устанавливает, изменялся ли текст в процессе редактирования.