Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
Контрольное задание № 120
Контрольное задание № 1
Цель работы: изучение основных приемов работы в среде Delphi.
Общие сведения
Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами.
Основные термины, которые будут использоваться в данных методических указаниях, приведены ниже.
Объекты - это некоторые элементы, из которых строится приложение (программа).
Свойства - это характеристики объекта, определяющие их внешний вид и поведение.
Событие - это то, что происходит в реальном времени и может вызывать те или иные ответные действия.
Методы - способы, которыми объект может реагировать на те или иные события.
Интерфейс среды Delphi
Среда Delphi содержит нескольких отдельно расположенных окон.
Ниже перечислены основные составные части Delphi (интерфейс среды представлен на рисунке 1):
- основное окно (Main) (на рисунке 1 обозначено цифрой 1);
- окно инспектора объектов (Object Inspector) (на рисунке 1 обозначено цифрой 2);
- окно дизайнера форм (Form Designer) (на рисунке 1 обозначено цифрой 3);
- окно редактора кода (Code Editor) (на рисунке 1 обозначено цифрой 4).
Рисунок 1
Основное окно содержит строку меню, линейку инструментов и палитру компонентов (рисунок 2).
Рисунок 2
Меню Delphi содержит многочисленные функции, которые используются программистом при разработке проекта: открытие и закрытие файлов, управления отладчиком, настройка среды программирования и т.д. Слева под меню находится линейка инструментов (рисунок 3). Она содержит кнопки быстрого доступа, являющиеся удобным средством для доступа к часто используемым командам. Чтобы выполнить какую-либо команду, надо нажать кнопку быстрого доступа мышью (например, для того, чтобы сохранить файл или запустить на выполнение программу).
Рисунок 3
Кнопка служит для запуска программы
Кнопка служит для приостановки выполняемой программы
Кнопка служит для открытия различных файлов, которые создает Delphi
Кнопка служит для сохранения программы
Кнопка служит для сохранения всех открытых программ
Кнопка служит для открытия проекта
Кнопка служит для добавления файла в проект
Кнопка служит для удаления файла из проекта
Кнопка служит для вызова справки
Кнопка служит для просмотра модулей
Кнопка служит для просмотра форм
Кнопка служит для переключения между формой и модулем
Кнопка служит для создания новой формы
Кнопка выполнение шага программы (со входом в подпрограмму)
Кнопка выполнение шага программы (без входа в подпрограмму).
Справа от линейки инструментов находится серое поле с пиктограммами, которое называется палитрой компонентов (рисунок 4). При визуальном формировании программы надо выбрать пиктограмму, которая представляет определённый компонент в палитре, и поместить её на форму (форма отображается как отдельное окно ниже палитры компонентов). Палитра состоит из нескольких страниц компонентов, помеченных как Standard (стандартные), Additional (дополнительные), System (системные), Dialogs (диалоги) и т.д. Можно “пролистывать” страницы, нажимая мышью на одну из меток вверху строки пиктограмм компонентов.
Рисунок 4
Дизайнер форм позволяет создавать программисту визуальный интерфейс программы. В начале работы пустое окно, озаглавленное Form1, покрытое рядами точек (рисунок 5). Это окно называется формой. На ней могут быть размещены (рисунок 6) выбранные из палитры компоненты интерфейса пользователя, например, кнопки, метки, поля редактирования и т.д.
Рисунок 5
Рисунок 6
В Delphi каждой форме соответствует модуль, содержащий программный код на языке Object Pascal. По умолчанию форме Form1 соответствует модуль Unit1. Визуальное проектирование интерфейса программы обычно сопровождается разработкой кода. Код пишется в окне редактора кода (рисунок 7).
Рисунок 7
Инспектор объектов отображает своё окно по левому краю экрана (рисунок 8).
Рисунок 8
Внутри инспектора объекта находятся таблицы, расположенные на двух
страницах «Свойства» (Properties) и «События» (Events). Инспектор объектов тесно связан с дизайнером форм (инспектор объектов отображает свойства того объекта, который выбран в дизайнере форм). Страница свойств инспектора объекта содержит таблицу, состоящую из двух колонок с названием свойства в левой колонке и его значением в правой. Программист может редактировать значения в правой колонке, тем самым менять свойства компонента.
Страница «События» показывает список событий, которые могли бы быть связаны с выбранным на форме объектом (рисунок 9). Страница событий связана с редактором кода. Если дважды щелкнуть мышкой на правую сторону какого-нибудь пункта, то произойдет переход в редактор кода и появится возможность добавить код обработчика данного события.
Рисунок 9
Пример разработки приложения
Процесс создания Delphi-приложения включает три следующих шага:
1. Создание эскиза формы. На форме размещаются необходимые визуальные и невизуальные компоненты.
2. Установка значений свойств размещенных компонентов, таких как размер, цвет, и т.д. Изменение свойств производится с помощью инспектора объектов.
3. Указание реакций компонентов на события в системе. Этот этап требует написания программного кода обработчика события.
Теперь можно выполнить компиляцию исходного кода Object Pascal и ресурсов формы в исполнимый файл .EXE, который может запускаться в Windows как отдельная программа.
Рассмотрим порядок действий программиста при разработке приложения на примере программы вычисления квадрата числа.
Для выполнения этой работы нам понадобиться 3 компонента: Label, Edit и Button. Все они находятся на вкладке Standard палитры компонентов.
TLabel - это обычный текст. Текст можно изменить в свойстве Caption, шрифт меняется в свойстве Font. (Свойства можно изменять в Инспекторе объектов (Object inspector))
TEdit предназначен для ввода пользователем некоторых текстовых данных. Свойство Text в инспекторе объектов позволяет изменять начальный текст, отображаемый в поле. Ограничение количества введенных символов - свойство MaxLength (0 - число символов не ограничено).
TButton - это кнопка. Текст на кнопке задается свойством Caption.
Созданию программы можно свести к следующей последовательности действий.
Перенесите на форму компоненты TLabel, TEdit, TButton и измените размеры формы как показано на рисунке 10:
Рисунок 10
Щелкните мышкой компонент Label1 и в объекте инспекторов найдите свойство Caption. Измените это свойство с Label1 на Число:.
Для второго компонента Label2 в свойстве Caption укажите значение Квадрат числа:.
Аналогично для компонента Button поменяйте свойство Caption на Выход.
Теперь нажмите на компонент Edit1 и в инспекторе объектов найдите свойство Text. Это свойство отвечает за отображаемый текст внутри этого компонента. Удалите все символы из соответствующей ячейки инспектора объектов, чтобы получить пустое поле внутри компонента Edit1. Повторите вышеуказанные действия для Edit2.
На данном этапе интерфейс программы должен выглядеть, как представлено на рисунке 11.
Рисунок 11
Интерфейс создан, теперь научим нашу программу возводить число в квадрат.
Два раза нажмите на компонент Button. Произошел переход в редактор кода, где автоматически создается процедура TForm1.Button1Click, которая будет выполняться при нажатии на компонент Button. После слова begin добавьте строчку:
«Form1.close;»
Рисунок 12
Запустите программу, и убедитесь в том, что при нажатии на кнопку, программа закроется. Если всё прошло успешно, то переходим к программированию вычисления квадрата числа.
В тексте основной программы после слова Var напишите:
«a: integer;»
Рисунок 13
Теперь глобальная переменная А типа integer создана и может быть использована в любой подпрограмме модуля Unit1.
Затем выберите компонет Edit1 (Под словом «число») и в инспекторе объектов перейдите на вкладку Events. Найдите свойство «OnChange». Два раза нажмите на него. Произошел переход в редактор кода, где автоматически создается процедура TForm1.Edit1Change, которая будет выполняться при изменении текста в компоненте.
После слова begin добавьте строчки:
if (edit1.Text <> '') then
begin
a:=strtoint(edit1.text);
edit2.text:=inttostr(a*a);
end;
Рисунок 14
Получившаяся программа будет работать так: проверяется, что написано в Edit1, если там что-то есть, то присваиваем это переменной А, а свойству Text компонента Edit2 присваиваем значение квадрата А (с помощью функции strtoint мы преобразуем строку в число, а с помощью inttostr число в строку). Если в Edit1 изменить число, то будет вызван метод TForm1.Edit1Change, который обеспечит возведение в квадрат этого числа и отображение получившегося значения в Edit2.
Примечание. С помощью функций IntToStr(a), FloatToStr(a), StrToInt(a), StrToFloat(a) можно преобразовывать целые величины в строковые, вещественные в строковые, строковые в целые и строковые в вещественные соответственно.
Итак, на этом этапе программа должна выглядеть:
Рисунок 15
A интерфейс программы.
B текст программы.
Запускаем программу (рисунок 16) и вводим в первое поле любое число. Во втором поле сразу же получаем результат. При нажатии на кнопку «Выход» выполнение программы завершается.
Рисунок 16
Программа "Калькулятор"
Рассмотрим последовательность разработки более сложной программы калькулятор.
Придайте форме желаемые размеры:
Рисунок 17
Разместите компонент TEdit в любом месте на форме и измените свойство Text как показано на рисунке:
Рисунок 18
Расположите 5 кнопок (+,-,/,*,=) по вашему желанию. В данной работе будем считать:
button1 “+”;
button2 “-“;
button3 “*”;
button4 “/”;
button5 “=”;
Рисунок 19
Выберите компонент Label, и расположите его на форме. Поменяйте свойство Caption, Font - size:
Рисунок 20
И теперь последний штрих в оформлении. Щёлкните в любом пустом месте формы и поменяйте её свойство Caption (например на Calculator (1.0)):
Рисунок 21
Программирование.
Теперь научим наш калькулятор считать. Сделайте активным окно с кодом программы и введите после слова Var:
a,b,flag: integer;
Рисунок 22
В переменных a,b мы будем хранить введённые числа, а переменная flag нам нужна для определения выбранного действия.
Два раза щёлкните по button1, это наш “+”. Поздравляю, вы создали процедуру, которая будет срабатывать при нажатии на эту кнопку. После слова Begin введите:
Flag:=1;
a:=strtoint(edit1.text);
edit1.Text:='';
Рисунок 23
Итак, при нажатии на кнопку button1 переменной flag присвоится значение «1». Нам это понадобиться в дальнейшем. Переменной «а» мы присваиваем значение, которое пользователь ввёл в поле Edit1. Оператор strtoint нам нужен для того, что перевести текстовые данные в числовые.
Аналогично создайте для трёх оставшихся кнопок
(-,*,/) процедуры. Значения переменной flag следующие:
«-» - flag:=2;
«*» - flag:=3;
«/» - flag:=4;
Внимание! Присваивание переменной «а» значения должно быть также написано в процедуре каждой кнопки математического действия!
Последняя строчка нам нужна, чтобы обнулить поле Edit1, для следующего ввода.
Теперь создадим процедуру при нажатии на кнопку «=» (button5). После слова Begin добавляем:
b:=strtoint(edit1.text);
if (flag=1) then edit1.Text:=inttostr(a+b);
if (flag=2) then edit1.Text:=inttostr(a-b);
if (flag=3) then edit1.Text:=inttostr(a*b);
if (flag=4) then edit1.Text:=inttostr(a div b);
Рисунок 24
Переменной «b» присваиваем значение, которое сейчас находится в поле edit1. Далее определяем, какая кнопка была нажата, и далее выполняем соответствующее математическое действие. Функция inttostr нам нужна для перевода числа в строку.
Всё, теперь наш калькулятор умеет считать.
Запуск программы.
Пришло время проверить работоспособность нашей программы. Нажимаем F9 для запуска, либо зелёный треугольник, который находится слева от палитры компонентов.
Рисунок 25
Вводим первое число, выбираем математическое действие, вводим второе число, нажимаем кнопку «=», и видим результат. Всё, наша программа работает. Если у вас что-то не работает, вернитесь в начало и проверьте все свои действия.