§ 20. Создание приложений
20.3. Создание приложения «Блокнот»
Разместить на форме (пример 20.7) следующие компоненты:
Компонент Мемо предназначен для набора и редактирования текста. Для того, чтобы компонент занимал все клиентскую часть формы, необходимо установить у свойства Align значение asClient, (пример 20.8). Добавить вертикальную полосу прокрутки, выбрав значение ssVertical для свойства ScrollBars. Для того, чтобы очистить рабочую область компонента, необходимо вызвать редактор строк (String List Editor) и удалить текст Memo1. Редактор строк вызывается нажатием кнопки Структура меню представлена в примере 20.10. Для написания обработчиков пунктов меню нужно в инспекторе объектов выбрать соответствующий пункт меню, перейти на вкладку Events и выбрать событие OnClick. Поскольку событие OnClick является событием по умолчанию, то двойной клик по пункту в редакторе меню или по соответствующей строке в разделе Structure создаст функцию обработчик. Обработчики событий для каждого из пунктов меню и создания формы представлены в примере 20.11. Для сохранения и загрузки файлов опишем глобальную переменную FileName: String FileName; Обработчик пункта меню «Новый» (N3) очищает строки компонента Memo от введенного ранее текста. Обработчики пунктов меню «Открыть» (N4) и «Сохранить» (N5) работают с файлом. Имя файла добавляется к заголовку окна. Обработчик пункта меню «Выход» (N7) закрывает главную форму проекта. Обработчик пункта меню «Шрифт» (N8) приписывает шрифту, связанному с компонентом Memo, свойства, выбранные пользователем. Обработчик пункта меню «Цвет фона» (N9) устанавливает для Memo цвет фона, выбранный пользователем. Окно работающего приложения показано в примере 20.12. Для компонента Memo определены следующие действия: Копировать (Ctrl + C), Вырезать (Ctrl + X), Вставить (Ctrl + V), Отменить (Ctrl + Z). |
Пример 20.7. Форма на этапе конструирования: Пример 20.8. Настройка клиентской области: Пример 20.9. Редактор строк: Пример 20.10. Структура меню: Пример 20.11. Обработчики событий:
Пример 20.12. Работающее приложение: |