Для создания текстового редактора нам понадобится компонент RichEdit, который представляет собой многострочный редактор, работающий с расширенным текстовым форматом RTF. Текст формата RTF хранит дополнительную служебную информацию, управляющую свойствами каждого абзаца и сменой шрифта по ходу текста.
Рассмотрим свойства компонента, которые понадобятся нам при создании программы.
Атрибуты абзаца доступны через следующие свойства:
Свойство
Значение
Alignment
Горизонтальное выравнивание текста абзаца относительно границ компонента
LeftIndent
Отступ текста абзаца от левого края компонента
Numbering
Указывает, надо ли вставлять слева от абзаца символы списка. Если содержит nsBullet символы списка вставляются.
RightIndent
Отступ текста абзаца от правого края компонента
Свойства класса TRichEdit:
Свойство
Значение
DefAttributes
Определяет шрифтовые атрибуты всего текста
Lines
Содержит набор строк текста
Paragraph
Содержит атрибуты текущего или выделенного абзаца
SelAttributes
Определяет шрифтовые атрибуты выделенного текста
SelLength
Задает длину в символах выделенной части текста
SelStert
Определяет номер первого символа выделенной части текста от начала текста (нумерация начинается с нуля)
SelText
Содержит выделенный текст. Установка нового значения SelText заменяет выделенный текст на новый, а если нет выделения – вставляет его в позицию курсора.
Методы компонента RichEdit в основном совпадают с методами компонента Memo.
Оформите окно программы как показано на рисунке. Окно содержит главное меню, две панели инструментов «Стандартная» и «Форматирование», рабочую область и строку состояния.
Главное меню содержит пункты:
w Файл
° Создать
° Открыть
° Сохранить
° Сохранить как…
° Выход
w Правка
° Отменить
° Вырезать
° Копировать
° Вставить
° Удалить
° Найти
° Заменить
w Вид
° Панели инструментов
§ Стандартная
§ Форматирование
w Формат
° Шрифт
° Фон
w Помощь
° Справка
° О программе
Пункты меню должны выполнять команды приближенные к тем, которые исполняются в программе Word Pad.
Строка состояния должна отображать координаты текстового курсора, а в заголовок программы – название открытого документа.