Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
33
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

Символы шаблона маски:

  1. Наличие символа «!» означает, что в EditText недостающие символы предваряются пробелами, а отсутствие символа «!» означает, что пробелы размещаются в конце.

  2. Символ «>» означает, что все последующие за ним символы должны вво­диться в верхнем регистре, пока не кончится маска или пока не встретит­ся символ «<».

  3. Символ «<» означает, что все последующие за ним символы должны вво­диться в нижнем регистре, пока не кончится маска или пока не встретит­ся символ «>».

  4. Символ «L» означает, что в данной позиции должна быть буква.

  5. Символ «1» означает, что в данной позиции может быть только буква или ничего.

  6. Символ «А» означает, что в данной позиции должна быть буква или цифра.

  7. Символ «а» означает, что в данной позиции может быть буква, или цифра, или ничего.

  8. Символ «С» означает, что в данной позиции должен быть любой символ.

  9. Символ «с» означает, что в данной позиции может быть любой символ или ничего.

  10. Символ «О» означает, что в данной позиции должна быть цифра.

  11. Символ «#» означает, что в данной позиции может быть цифра, знак «+», знак «-» или ничего.

  12. Символ «:» используется для разделения часов, минут и секунд.

  13. Символ «/» используется для разделения месяцев, дней и годов в датах.

  14. Символ «_» означает автоматическую вставку в текст пробела.

Вводить маску можно непосредственно в свойство Edit Mask. Но удобнее пользоваться специальным редактором масок, вызываемым при нажатии кнопки с многоточием в строке свойства EditMask в Инспекторе Объектов, значений свойства EditText и Text будут различаться.

4. Основные свойства, события и методов многострочных окон редактирования Memo и Richedit

Компоненты Memo и RichEdit являются окнами редактирования многострочного текста. (см. рис. 12)

рис. 12. Компоненты Memo, RichEdit

Они так же, как и окно Edit, снабжены многими функциями, свойственными большинству редакторов. В них предусмотрены типичные комбинации «горячих» клавиш: Ctrl-C — копирование выделенного текста в буфер обмена Clipboard (команда Copy), Ctrl-X — вырезание выделенного текста в буфер Clipboard (команда Cut), Ctrl-V — вставка текста из буфера Clipboard в позицию курсора (команда Paste), Ctrl-Z — отмена последней команды редактирования.

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

Компонент RichEdit работает с текстом в обогащенном формате RTF. При желании изменить атрибуты вновь вводимого фрагмента текста вы можете задать свойство SelAttributes. Это свойство типа TText Attributes, которое в свою очередь имеет подсвойства: Color (цвет), Name (имя шрифта), Size (размер), Style (стиль) и ряд других. Например, введите на форму компонент RichEdit, диалог выбора шрифта FontDialog и кнопку Button, которая позволит пользователю менять атрибуты текста. В обработчик щелчка кнопки можно было бы ввести текст:

if FontDialogl.Execute then with RichEditl.SelAttributes do begin Color:=FontDialogl.Font.Color; Name:=FontDialogl.Font.Name; Size:=FontDialogl.Font.Size; Style:=FontDialogl.Font.Style; end; RichEditl.SetFocus;

В компоненте имеется также свойство DefAttributes, содержащее атрибуты по умолчанию. Эти атрибуты действуют до того момента, когда изменяются атрибуты в свойстве SelAttributes. Но значения атрибутов в Def Attributes сохраняются и в любой момент эти значения могут быть методом Assign присвоены атрибутам свойства SelAttributes, чтобы вернуться к прежнему стилю.

Свойство DefAttributes доступно только во время выполнения. Поэтому его атрибуты при необходимости можно задавать, например, в обработчике события OnCreate.

За выравнивание, отступы и т.д. в пределах текущего абзаца отвечает свойство Paragraph типа TPar a Attributes. Этот тип в свою очередь имеет ряд свойств:

1.Alignment - Определяет выравнивание текста и может принимать значения: taLeftJustify (влево), taCenter (по центру) или taRightJustify (вправо).

2.Firstlndent - Число пикселей отступа красной строки

3.Numbering - Управляет вставкой маркеров, как в списках. Может принимать значения nsNone — отсутствие маркеров, nsBullet — маркеры ставятся

4.Leftlndent - Отступ в пикселях от левого поля

5.Rightlndent - Отступ в пикселях от правого поля

6.TabCount - Количество позиций табуляции

7.Tab - Значения позиций табуляции в пикселях

Значения подсвойств свойства Paragraph можно задавать только в процессе выполнения приложения. Свойства TabCount и Tab имеют смысл при вводе текста только при значении свойства компонента WantTabs = true. Это свойство разрешает пользователю вводить в текст символ табуляции. Если WantTabs = false, то нажатие пользователем клавиши табуляции просто переключит фокус на очередной компонент и символ табуляции в текст не введется.