TextBox – поле ввода (окно редактирования)

Элемент TextBox (поле ввода) – основное средство для ввода пользователем числовых и текстовых данных в систему. Его можно использовать и для вывода информации для пользователя. Поле ввода представляет собой простой одно- или многострочный текстовый редактор, имеющий, кроме указанных выше общих свойств объектов – элементов управления, целый ряд специфических свойств.

Свойства Описание
Text содержит текст, находящийся в поле ввода (то же значение имеет и свойство Value)
MultiLine определяет, сколько редактор содержит строк: одну или несколько. False (по умолчанию) - одна строка; True - допускается много строк.
WordWrap Регулируется переход на новую строку. Если оно равно True, текст автоматически переносится на новую строку при достижении правой границы поля. При значении False новая строка в редакторе появляется лишь при обнаружении или при вставке в текст символа перехода на новую строку [клавиши Ctrl+Enter или Shift+Enter - при вводе и Chr (13) или Chr (10) - при выводе]. Иначе при достижении правой границы поля текст сдвигается влево, и ввод продолжается в той же строке. Параметр WordWrap влияет на работу только многострочного редактора (т. е. при MultiLine = True).
AutoSize заставляет поле автоматически менять размер, подстраивая его под текст. Его имеет смысл устанавливать в True для полей, используемых для вывода информации (например, для полей с многострочными заголовками или сообщениями).
MaxLength задает максимальную допустимую длину текста в поле ввода. По умолчанию равно 0, что означает отсутствие ограничений (точнее, ограничения накладываются лишь доступной памятью).
TextLength возвращает текущий размер текста в поле (для многострочного текста учитываются также символы перевода строки), а LineCount - текущее количество строк в тексте.
CurLine устанавливает или возвращает номер строки редактора, в которой находится курсор. Строки нумеруются с 0. Свойство CurX задает текущую горизонтальную позицию курсора, а свойство CurTargetX совпадает с CurX при работе в текущей строке, но сохраняет старое значение при переходе на новую строку в результате нажатия клавиш-стрелок, пролистывания или при вставке новой строки. Эти свойства позволяют управлять положением курсора при перемещении по строкам редактора. Единицей измерения для обоих свойств служит 0.01 см. Все три свойства работают, только когда поле ввода находится в фокусе.
SelText возвращает текст, выделенный в поле ввода
SelLength возвращает его длину
SelStart определяет начальную позицию выделенного текста в поле, а если такого текста нет, то позицию курсора. Значения двух последних свойств измеряются в символах и могут лежать в интервале от 0 до общего числа символов в поле. Доступ ко всем трем свойствам возможен всегда независимо от того, находится ли поле ввода в фокусе. Изменение значения свойства SelStart приводит к снятию выделения с текста (SelText становится пустой строкой), установке курсора в новую позицию и установке SelLenght в 0.
PasswordChar Поле ввода можно использовать для ввода паролей и других данных, которые не должны появляться на экране, когда пользователь набирает их на клавиатуре. Эта функция поддерживается свойством, задающим символ-заместитель, который появляется на экране при нажатии пользователем любой клавиши. Обычно в качестве такого символа выбирают звездочку "*", тире "-", подчеркивание "_" и т. п. Свойство Text при этом сохраняет настоящий введенный пользователем текст.

События: AfterUpdate, BeforeDragOver, BeforeDropOrPaste, BeforeUpdate, Change, DblClick, DropButtonClick, Enter, Error, Exit, KeyDown, KeyUp, KeyPress, MouseDown, MouseUp, MouseMove.

Методы: Copy, Cut, Move, Paste, SetFocus, ZOrder.