2.2.7 Однострочный и многострочный редакторы текста

        Для ввода неформатированного текста предназначены компоненты Edit и Memo. Однострочный редактор Edit служит для ввода различных слов, фраз и относительно короткого текста и находится на странице Standard. Редактируемый текст содержится в свойстве Text, а его максимальная длина определяется значением свойства MaxLength. Для отображения нередактируемого текста свойство ReadOnly устанавливают в true. Для ввода паролей можно в свойстве PasswordChar вместо символа 0х00 установить символ *. Изменение текста во время работы приложения приводит к генерации в компоненте Edit события OnChange. Обрабатывая это события можно запретить кнопку Ok , если в редакторе нет текста. Для этого нужно определить для компонента Edit следующий обработчик события OnChange:
OkBtn->Enabled=Edit->Text.Length()!=0;
       Этот прием исключает необходимость проверки введенных данных на корректность и позволяет избежать ошибок пользователя, которые могут привести к ошибкам в программе.
Для ввода данных строго определенного формата имеется компонент Maskedit, который позволяет пользователю вводить только разрешенные символы в разрешенных позициях. Свойство EditMask задает шаблон для ввода символов текста. Шаблон имеет вид текстовой строки, его символы называются форматными и управляют тем, что вводит пользователь: буквы или цифры, в каком порядке, сколько и т.д.
       Многострочный редактор представлен компонентом Memo, в отличие от однострочного редактора может хранить множество строк. Доступ к строкам обеспечивает свойство Lines , которое доступно из инспектора объектов на стадии проектирования. Поэтому можно заполнить компонент исходным текстом, который увидит пользователь при появлении формы на экране. Ввод исходного текста осуществляется в редакторе строк, который вызывается щелчком мыши на многоточии в поле значения свойства Lines.
      Для ввода целых чисел можно использовать управляющий элемент в виде кнопок для увеличения и уменьшения числовых значений, который называется UpDown. Свойство Increment определяет шаг приращения.
    Для реализации возможности выбора значения из большого множества альтернатив имеется компонент выпадающий список ComboBox. Это однострочный редактор, к которому прикреплен выпадающий список. Редактор служит для ввода нового значения, а список –для выбора существующего значения. Элементами выпадающего списка могут быть текстовые строки, графические рисунки. Количество элементов в списке может быть произвольным и элементы могут динамически изменяться.  Для доступа к элементу из программы имеется свойство ItemIndex, нумеруемое с нуля. Сам элемент выпадающего списка доступен через свойство Item, через которое можно на стадии проектирования заполнить список.
    Похожим элементом является компонент ListBox, который отображает прокручиваемый список элементов, которые пользователь может просматривать и выбирать, но не может модифицировать. Элементы могут располагаться в одну или несколько колонок и автоматически сортироваться.