
- •Задание № 1 «Первый проект в новой среде»
- •Ознакомьтесь с содержанием первой части Модуля 1 (Eidos_Course_Delphi_Modul-01) «Знакомство со средой Borland Delphi 7».
- •Ознакомьтесь с содержанием 2 части модуля 1 «Интерфейс среды Borland Delphi».
- •Запрограммируем простейшую задачу, целью которой будет подсчет длины окружности и площади круга заданного радиуса r.
- •Спроектируем интерфейс нашего приложения.
- •Размещение элементов на форме и их настройка.
- •Кнопка выхода
- •П ервоначальное сохранение проекта.
- •Программируем вычисления
- •Сохранение измененного проекта.
- •По аналогии запрограммируйте задачу, вычисляющую площадь и периметр прямоугольника. Сначала коротко ответьте на вопросы, а потом действуйте по такой же схеме:
Кнопка выхода
Интерфейс программы практически сконструирован. Однако давайте позаботимся о пользователе, предусмотрев на форме кнопку выхода. Разместите на форме кнопку с надписью «Выход» и именем Exit.
Возможно, шрифт, выбранный вами для формы, не подходит для оформления надписи кнопки. Для объекта кнопка установите свои параметры шрифта. При этом обратите внимание на то, что цвет шрифта кнопки не меняется – это делается другим способом.
Итак, работа над интерфейсом в первом приближении закончена. Прежде чем приступить к программированию, сохраним свой проект.
П ервоначальное сохранение проекта.
Ч
тобы
сохранить проект, нужно из меню File
выбрать
команду
Save
Project
As.
Если
проект еще ни разу не был сохранен, то
Delphi сначала предложит сохранить модуль
(содержимое окна редактора кода), поэтому
на экране появится окно Save
Unitl As.
В этом окне надо выбрать папку,
предназначенную для файлов проекта, и
ввести имя модуля. После нажатия кнопки
Сохранить,
появляется
следующее окно, в котором необходимо
ввести имя файла проекта.
Обратите внимание на то, что имена файлов модуля (pas-файл) и проекта (dpr-файл) должны быть разными!
Программируем вычисления
На данный момент, все элементы, размещенные на форме, являются только элементами дизайна и не работают.
Вид созданной формы подсказывает, как работает приложение. Очевидно, что пользователь должен ввести в поле редактирования исходные данные и щелкнуть мышью на кнопке Считать, а для выхода из программы следует нажать на кнопку Выход. Щелчок на изображении командной кнопки — это пример того, что в Windows называется событием. Реакцией на событие должно быть какое-либо действие. В Delphi реакция на событие реализуется как процедура обработки события.
Таким образом, для того чтобы программа выполняла некоторую работу в ответ на действия пользователя, программист должен написать процедуру обработки соответствующего события.
- Запрограммируем кнопку выхода.
Двойной щелчок на кнопке Exit в режиме редактирования формы переносит нас в окно кода, где сразу же появляется заготовка для нашей событийной процедуры:
procedure TOkruzh.ExitClick(Sender: TObject);
begin
end;
begin – начало процедуры; end – ee окончание.
Собственно содержание процедуры будет состоять из единственной команды Okruzh.Close – закрыть форму Okruzh.
Обратите внимание: В процессе набора текста программы редактор кода выводит справочную информацию о параметрах процедур и функций, о свойствах и методах объектов. После того, как вы поставили «.», в окне кода появился список-подсказка (все свойства и методы формы, которые доступны). Вы могли выбрать команду Close из списка, а могли написать вручную
Если после нажатия «.» после имени объекта подобный список не появляется – это сигнал. Значит, объекта с таким именем в вашем проекте нет – проверьте правильность написания имени.
- Проверим работу кнопки выхода.
П
робный
запуск программы можно выполнить
непосредственно из Delphi, не завершая
работу со средой разработки. Для этого
нужно из меню Run
выбрать
команду Run
или
щелкнуть на соответствующей кнопке
панели инструментов Debug.
Перед тем, как программа запустится, будет произведена проверка кода на наличие ошибок. В случае обнаружения ошибки строчка, ее содержащая, будет подсвечена бордовым, а в нижней части окна кода выведется сообщение о типе ошибки.
Теперь ваша форма выведена на экран в режиме работы программы – нажмите на кнопку Выход и убедитесь в том, что форма закрывается.
- Запрограммируем кнопку вычислений.
Двойной щелчок на кнопке Считать переносит нас внутрь соответствующей процедуры в окне кода.
Как мы установили еще в процессе постановки задачи, для успешной работы программы нам понадобятся три переменные: R, S, L.
Очевидно, что, зная радиус, длина окружности и площадь круга вычисляются по формулам: L=2*3.14*R, S=3.14*R*R.
Осталось взять данные из текстового поля и поместить результат в метку на форму.
Обратите внимание: Поле Radius является текстовым, а нам необходимо задействовать его содержимое в вычислениях. Значит необходимо преобразовать строку текста в соответствующее число. Это возможно сделать в Delphi с помощью функции StrToFloat.
Тогда код процедуры для кнопки Calc (Считать) будет выглядеть так:
procedure TOkruzh.CalcClick(Sender: TObject);
var R,S,L:real;
begin
R:=StrToFloat(Radius.Text);
S:=3.14*R*R;
L:=2*3.14*R;
Result.Caption:='S='+FloatToStr(S)+' L='+FloatToStr(L);
end;
Рассмотрим каждую строку кода:
procedure TOkruzh.CalcClick(Sender: TObject); //объявление процедуры
var R,S,L:real; // описание переменных
begin // начало процедуры
R:=StrToFloat(Radius.Text); // преобразование текста в число
S:=3.14*R*R; // вычисление площади круга
L:=2*3.14*R; // вычисление длины окружности
Result.Caption:='S='+FloatToStr(S)+' L='+FloatToStr(L); // изменение надписи метки –
вывод результатов. Строится по принципу сцепления строк в Pascal. Но для этого необходимо с помощью функции FloatToStr преобразовать числа в строки.
end; //конец процедуры.
- Запустим программу.
Обратите внимание на распространенные ошибки: не забывайте ставить в конце строки «;», правильно записывайте знак присваивания «:=», в записи действительного числа используется не запятая, а точка.
Запустите программу. Введите разные значения радиуса и убедитесь в том, что получаете ожидаемый ответ. Выйдите из программы с помощью кнопки выхода.
Обратите внимание: Если вы случайно введете в поле Radius не число, а иной символ, выполнение программы будет прервано с сообщением об ошибке.
Чтобы иметь возможность отредактировать код, в меню Run выберите пункт Program Reset.