Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Если задан интерфейс WINDOWS.



 

Интерфейс программы представляет собой стандартное окно WINDOWS. В верхней части располагается меню, со списком действий по составу напоминающее стандартное меню (как в программе блокнот). Само окно разделено на 2 части, размеры которых можно регулировать. В левой части производится отрисовка квадрата, в правой части находятся поля ввода параметров редактирования и некоторые кнопки.

Для редактирования числовых значений используются стандартные поля Windows со стрелками – они позволяют вводить произвольное число с клавиатуры, так и менять введённое число при помощи кнопок со стрелками.

Для ввода диагоналей используется поле с флажком (CheckBox).

Для ввода цвета используется поле со списком, в котором предусмотрены как основные цвета, так и настраиваемый цвет (в этом случае отображается стандартное диалоговое окно Windows для выбора цвета).

Кроме того, на форме присутствуют 2 кнопки для перерисовки квадрата и для выполнения расчета.

При нажатии на кнопку расчёта на экран выводится окно с результатами расчета.

 

Программа помнит, с каким файлом она в данный момент работает. Имя этого файла отображается в заголовке окна в формате «Редактор квадрата - < имя файла> ». При открывании нового файла или сохранении файла под другим именем программа запоминает это имя файла. При запуске программы или при создании нового файла программа сбрасывает имя файла на безымянный. В заголовке отображается «Редактор квадрата – без имени», т.е. программа в данный момент не работает ни с каким файлом.

При выборе нового файла или закрытии программы выводится окно, предлагающее сохранить данные.

· Да – сохранение производится, операция разрешается

· Нет – сохранение не производится, операция разрешается

· Отмена – сохранение не производится, операция отменяется

 

Основное меню состоит из следующих элементов:

· Файл

o Новый – сброс параметров квадрата, создание нового файла

o Открыть… – запускается стандартный диалог выбора файла для загрузки данных

o Сохранить – если программа работает файлом, то производится сохранение в этот файл, иначе действие аналогично следующему пункту

o Сохранить как… - запускается стандартный диалог выбора файла для сохранения данных

o Импорт INI - запускается стандартный диалог выбора файла для загрузки данных из INI файла

o Экспорт INI - запускается стандартный диалог выбора файла для сохранения данных в INI файл.

o Экспорт BMP - запускается стандартный диалог выбора файла для сохранения данных в BMP файл.

o Выход – выход из программы.

· Правка

o Отменить – отменяет в текстовых и числовых полях ввода 1 действие

o Удалить – удаляет выделенную область в текстовом и числовом поле ввода

o Вырезать - удаляет и копирует выделенную область в текстовом и числовом поле ввода в буфер обмена Windows

o Копировать - копирует выделенную область в текстовом и числовом поле ввода в буфер обмена Windows

o Вставить – вставляет данные из буфера обмена в текущее текстовое или числовое поле ввода

o Выделить всё – Выделяет весь текст или число в текущем поле ввода

· Действие

o Рассчитать – выполняет расчет площади и периметра квадрата

o Перерисовать – принудительно перерисовывает квадрат

· Справка

o Вызов справки – вывод справки о программе

o О программе… – отображает информацию об авторе программы

 

 

Разработка ядра программы

Базовый класс.

Для хранения данных квадрата в базовом классе должны быть предусмотрены поля, которые описаны в первом разделе. Учитывая, что в паскале под DOS переменные типа integer являются 16 битными, для 32битных переменных указываем Longint. Кроме того не забываем, что тип TColor не существует в Borland Pascal – вместо него используем LongInt.

Length: integer;

Angle: integer;

Diagonals: boolean;

LineColor: longint;

FillColor: longint;

Конструктор класса должен выполнять инициализацию всех полей объекта значениями по умолчанию.

constructor TKPSquare.Create;

begin

filldefaults;

end;

Деструктор класса нужен для освобождения памяти или объектов, которые резервируются во время создания или работы объекта. Т.к. такого не предусмотрено, то деструктор остаётся пустым.

destructor TKPSquare.Destroy;

begin

end;

Для того, чтобы можно было заполнять поля значениями по-умочанию создадим метод filldefaults

procedure TKPSquare.filldefaults;

begin

Length: =100;

Angle: =0;

Diagonals: =false;

LineColor: =$ffff;

FillColor: =$ff;

end;

Для Загрузки и сохранения данных в файл сделаем методы LoadFromFile и SaveToFile. Учитывая необходимость совместимости с Borland Pascal будем использовать доступ к файлам через файловые переменные. В качестве параметров этих функций передаётся имя файла (включая путь). Возвращаемое значение – true, если операция выполнена успешно или false, если произошла ошибка.


Поделиться:



Последнее изменение этой страницы: 2017-04-12; Просмотров: 288; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.012 с.)
Главная | Случайная страница | Обратная связь