Просмотр содержимого документа
«Создание приложения "Блокнот" в среде программирования PascalABC»
Практика_7
Задание 1. Создание Блокнота.
Программа Блокнот должна давать возможность открыть и сохранить текстовый файл, выбрать цвет текста.
Разместить на форме (пример 5.13) следующие компоненты:
рабочая область для текста — TextBox1;
диалоги работы с файлами — OpenDialog1, SaveDialog1;
диалоги для настройки внешнего вида приложения — FontDialog1, ColorDialog1;
главное меню — ManeMenu1.
Компонент TextBox1 предназначен для набора и редактирования текста. Установить значение Vertical для свойства ScrollBars (вертикальная полоса прокрутки). Align - alClient – разворачиваем компонент на весь размер формы
Структура меню представлена в примере 5.15.
Для написания обработчиков пунктов меню нужно в инспекторе объектов выбрать соответствующий пункт меню, перейти на вкладку События и выбрать событие Click. Поскольку событие Click является событием по умолчанию, то двойной клик по пункту в редакторе меню создаст процедуру-обработчик.
Для сохранения и загрузки файлов опишем глобальную переменную F_N:
var F _ N: String;
Установить в компонентах OpenDialog и SaveDialog фильтры как показано на рисунке:
Обработчик пункта меню Новый (StripMenuItem4) очищает строки компонента TextBox1 от введенного ранее текста.
procedure MainMenu1_1_1OnClick;
begin
TextBox1.Clear;
end;
Обработчики пунктов меню Открыть (StripMenuItem5) и Сохранить (StripMenuItem6) работают с файлом. Имя файла добавляется к заголовку окна.
//open file
procedure MainMenu1_1_2OnClick;
var s:string;
begin
if OpenDialog1.Execute then
begin
s:=OPenDialog1.FileName;
TextBox1.Lines.LoadFromFile(s);
end;
end;
//save file
procedure MainMenu1_1_3OnClick;
var F_N:string;
begin
if SaveDialog1.Execute then
begin
F_N:=SaveDialog1.FileName;
TextBox1.Lines.SaveToFile(F_N);
end;
end;
Обработчик пункта меню Выход (StripMenuItem8) закрывает главную форму проекта.
procedure MainMenu1_1_4OnClick;
begin
Form1.Close();
end;
Обработчик пункта меню Шрифт (StripMenuItem9) приписывает шрифту, связанному с компонентом TextBox1, свойства, выбранные пользователем. !!! Недоступен – Нет компонента FontDialog
Обработчики пунктов меню Цвет текста (StripMenuItem10) !!! Недоступен – Нет компонента FontDialog
Цвет фона (StripMenuItem11) устанавливают для TextBox1 цвета фона, выбранный пользователем.
If ColorDialog1.Execute then
TextBox1.Color:= ColorDialog1.Color