Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конструирование программ.doc
Скачиваний:
12
Добавлен:
05.05.2019
Размер:
12.37 Mб
Скачать

5.2 Конструирование простого приложения

В качестве примера рассмотрим разработку приложения Калькулятор.

Главное окно приложения Калькулятор должно содержать два поля для ввода операндов и одно поле для вывода результата.

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

Необходимо предусмотреть кнопку очистки всех полей, а также кнопку выхода из программы.

5.2.1 Интерфейс Пользователя

Интерфейс Пользователя приложения Калькулятор может выглядеть, например, как показано на рисунке 5.5

Рисунок 5.5 – Приложение Калькулятор. Интерфейс Пользователя

Для реализации интерфейса будем использовать следующие визуальные компоненты закладки Standard Палитры компонентов:

– поле ввода/вывода. Класс TEdit

– кнопка. Класс TButton

– метка. Класс TLabel. Используем для реализации знаков операций и знака =

– панель. Класс TPanel. Используем для реализации «подчеркивания».

5.2.2 Визуальное конструирование

Начнем конструирование приложения Калькулятор с подготовки проекта:

  • Создадим папку Калькулятор, где будут храниться все файлы проекта

  • Сохраним в созданной папке «пустой» проект Project1 под именем ProjectCalc (от англ. Calculateвычислять), а модуль Unit1 – под именем UnitCalc.

Дальнейшая разработка приложения, связанная с реализацией интерфейса Пользователя, заключается в размещении компонентов на форме, настройки их свойств и назначении обработчиков событий, необходимых для функционирования приложений.

Эта работа не требует написания программного кода (поэтому и называют ее визуальной) и выполняется с помощью Редактора форм и Инспектора объектов.

Шаг 1. Главная форма приложения.

Выделим компонент Форма – для этого щелкнем по нему мышкой.

В Инспекторе объектов изменим свойства Caption и Name, как показано на рисунке 5.6.

Рисунок 5.6 – Приложение Калькулятор. Настройка свойств главной формы

Используем событие OnActivate (возникает, когда приложение становится активным) для очистки полей ввода и результата. Задаем имя обработчика этого события – OnCalcActivate (рисунок 5.7).

Рисунок 5.7 – Приложение Калькулятор. Обработка событий главной формы

После того, как задано имя обработчика события, Delphi автоматически помещает спецификацию метода с таким же названием в описание класса TFormCalc и «пустую» реализацию метода в модуль UnitCalc.

Шаг 2. Поля ввода значения операндов и поле вывода результата

Выбираем компонент Edit ( ) в Панели инструментов и размещаем его на форме FormCalc.

В Инспекторе объектов устанавливаем значения свойств и обработчиков событий. Описание свойств и методов компонента Edit в приложении Калькулятор смотрите в таблице 5.1

Таблица 5.1 Использование компонента Edit

Компонент Edit – отображение, ввод и редактирование однострочного текста. Основное свойство – Text

Наименование

Значение

Комментарии

ПОЛЕ ВВОДА ПЕРВОГО ОПЕРАНДА

СВОЙСТВА

Name

EditOperand1

Наименование объекта

Text

пусто

В начале выполнения приложения значение первого операнда отсутствует

СОБЫТИЯ

OnKeyPress

Operand1KeyPress

Обработка нажатия клавиш:

0..9, Backspace () – доступны при вводе значения операнда

Enter – переход в поле второго операнда

ПОЛЕ ВВОДА ВТОРОГО ОПЕРАНДА

СВОЙСТВА

Name

EditOperand2

Наименование объекта

Text

пусто

В начале выполнения приложения значение второго операнда отсутствует

ПОЛЕ ВЫВОДА РЕЗУЛЬТАТА

СВОЙСТВА

Name

EditResult

Наименование объекта

Text

пусто

В начале выполнения приложения значение результата отсутствует

ReadOnly

True

Значение True запрещает ввод данных с клавиатуры в это поле

После выполнения данного шага Delphi автоматически помещает в описание класса TFormCalc объекты EditOperand1, EditOperand2, EditResult и спецификацию метода Operand1KeyPress, а также добавляет «пустую» реализацию метода Operand1KeyPress в модуль UnitCalc.

Шаг 3. Кнопки

Выбираем компонент Button ( ) в Панели инструментов и размещаем его на форме FormCalc.

В Инспекторе объектов устанавливаем значения свойств и обработчиков событий. Описание свойств и методов компонента Button в приложении Калькулятор смотрите в таблице 5.2

Таблица 5.2 Использование компонента Button

Компонент Button – командная кнопка. Используется для выполнения команд Пользователя

Наименование

Значение

Комментарии

КНОПКА – ОПЕРАЦИЯ СЛОЖЕНИЯ

СВОЙСТВА

Name

BtnAdd

Наименование объекта

Caption

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnAddClick

Нажатие клавиши

КНОПКА – ОПЕРАЦИЯ ВЫЧИТАНИЯ

СВОЙСТВА

Name

BtnMinus

Наименование объекта

Caption

-

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnMinusClick

Нажатие клавиши

КНОПКА – ОПЕРАЦИЯ УМНОЖЕНИЯ

СВОЙСТВА

Name

BtnMult

Наименование объекта

Caption

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnMultClick

Нажатие клавиши

Таблица 5.2. Продолжение

Компонент Button – командная кнопка. Используется для выполнения команд Пользователя

Наименование

Значение

Комментарии

КНОПКА – ОПЕРАЦИЯ ДЕЛЕНИЯ

СВОЙСТВА

Name

BtnDivide

Наименование объекта

Caption

/

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnDivideClick

Нажатие клавиши

КНОПКА – ОЧИСТИТЬ

СВОЙСТВА

Name

BtnClear

Наименование объекта

Caption

Очистить

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnClearClick

Нажатие клавиши

КНОПКА – ВЫХОД

СВОЙСТВА

Name

BtnClose

Наименование объекта

Caption

Выход

Надпись на кнопке

СОБЫТИЯ

OnClick

BtnCloseClick

Нажатие клавиши

После выполнения данного шага Delphi автоматически помещает в описание класса TFormCalc объекты BtnAdd, BtnMinus, BtnMult, BtnDivide, BtnClear, BtnClose и спецификации методов BtnAddClick, BtnMinusClick, BtnMultClick, BtnDivideClick, BtnClearClick, BtnCloseClick, а также добавляет «пустые» реализации этих методов в модуль UnitCalc.

Шаг 4. Метка и панель

Выбираем компонент Label ( ) в Панели инструментов и размещаем его на форме FormCalc. В Инспекторе объектов устанавливаем значения свойств.

Выбираем компонент Panel ( ) в Панели инструментов и размещаем его на форме FormCalc. В Инспекторе объектов устанавливаем значения свойств.

Описание свойств компонентов Label и Panel в приложении Калькулятор смотрите в таблице 5.3.

Таблица 5.3 Использование компонентов Label и Panel

Компонент Label – отображение текста, неизменяемого Пользователем. Основное свойство – Caption

Наименование

Значение

Комментарии

ЗНАК ОПЕРАЦИИ

СВОЙСТВА

Name

OperatorLabel

Наименование объекта

Caption

?

В начале выполнения приложения знак операции отсутствует

ЗНАК =

СВОЙСТВА

Name

ResultLabel

Наименование объекта

Caption

?

В начале выполнения приложения знак = отсутствует

Компонент Panel – группирование визуальных компонентов.

Основное свойство – Caption

«ПОДЧЕРКИВАНИЕ»

СВОЙСТВА

Name

PanelResult

Наименование объекта

Caption

пусто

В приложении – объемный прямоугольник, который отделяет операнды от результата

Таким образом, форма FormCalc будет содержать объекты визуальных компонентов классов TEdit, TButton, TLabel, TPanel.

После того, как завершено редактирование формы фактически завершена разработка структуры приложения Калькулятор – определены основные классы, объекты, свойства и методы объектов

Диаграмма классов приложения Калькулятор приведена на рисунке 5.8

Рисунок 5.8 – Приложение Калькулятор. Диаграмма классов

Сохраним проект ProjectCalc (для первоначального сохранения проекта выберите в меню File команду Save Project as….) и перейдем к программированию.