Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОА Delphi формата А4.doc
Скачиваний:
6
Добавлен:
29.08.2019
Размер:
1.58 Mб
Скачать

ЦЕНТРОСОЮЗ РОССИЙСКОЙ ФЕДЕРАЦИИ

КАМЧАТСКИЙ ОБЛАСТНОЙ СОЮЗ ПОТРЕБИТЕЛЬСКИХ ОБЩЕСТВ

НЕГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

Камчатский кооперативный техникум

КАФЕДРА ИНФОРМАЦИОННЫХ И ЕСТЕСТЕННОНАУЧНЫХ ДИСЦИПЛИН

ПРАКТИКУМ

«РАЗРАБОТКА ПРИЛОЖЕНИЙ В СРЕДЕ ПРОГРАММИРОВАНИЯ BORLAND DELPHI 7.0»

по дисциплине ОСНОВЫ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ цикла ОПД 08

(цикла ОГСЭ, ЕН, ОПД, СД, ТО.Р)

для специальности

230103 «Автоматизированные системы

обработки информации и управления»

(код и наименование специальностей)

Семестр IV

г. Петропавловск-Камчатский

2007 г.

Одобрено

Кафедрой информационных и естественно-научных дисциплин

Протокол № 2 от “13” ноября 2007 г.

Заведующая кафедрой информационных и естественно-научных дисциплин

/ Цымбалюк Л.Н.

Автор Цымбалюк Лариса Николаевна

Рецензент Гололобова Светлана Геннадьевна

Практикум “Разработка приложений в среде программирования Borland Delphi 7.0” предназначен для студентов специальности 230103 «Автоматизированные системы обработки информации и управления». Также он может быть полезен преподавателям учебной дисциплины «Основы алгоритмизации и программирования». В нём рассмотрены теоретические и практические вопросы по разработке приложений средствами Borland Delphi. Представленный материал знакомит читателя с основными приёмами для создания различных приложений: Калькулятор (простой, инженерный), Текстовый редактор (простейший, многооконный), Графический редактор (для рисования различных геометрических фигур по указанным координатам или от руки), Программы для тестирования (графический тест, тест с помощью функции MessageBox), Игры (например, DXBall), программы Органайзер и др.

Для успешного усвоения дисциплины студенты должны обладать базовыми навыками работы в операционной системе Windows. Желательно знание языка Pascal.

Студенты, завершившие изучение данной дисциплины, должны

знать: язык Delphi, основные компоненты среды Delphi, принципы объектно-ориентированного программирования;

уметь: реализовывать алгоритмы на языке Delphi, разрабатывать Windows приложения.

СОДЕРЖАНИЕ:

Введение. 7

Задание №1. Консольные приложения. 13

Задание №2. Знакомство со средой программирования Delphi. 15

Задание №3. Создание теста с помощью функции MessageBox. 16

Задание №4. Кнопка с рисунком. Создание формы для изменения иконки и стиля формы 18

Задание №5. Создание программы – простейший калькулятор. 19

Задание №6. Создание приложения для нахождения корней квадратного уравнения. 20

Задание №7. Создание инженерного калькулятора 21

Задание №8. Изучение компонента Image и его свойств. 22

Задание №9. Создание приложений для решения математических задач. 23

Задание №10. Создание простейшего текстового редактора «Блокнот» 24

Задание №11. Создание приложения ГРАФИЧЕСКИЙ РЕДАКТОР. 25

Задание №12. Изучение графических возможностей Delphi при решении математических задач. 28

Задание №13. Работа со списками классов TListBox и TComboBox. 28

Задание №14. Механизм Drag-And-Drop – копирование и перенос объектов. 31

Задание №15. Изучение методов и свойств компонента ListBox с помощью Delphi Library Reference Help. 32

Задание №16. Изучение свойств и методов компонента класса TTabbedNotebook. 33

Задание №17. Создание приложения СЕЗОНЫ ГОДА с использованием оператора Case. 34

Задание №18. Создание приложения ГРАФИЧЕСКИЙ РЕДАКТОР – рисование от руки. 35

Задание №19. Работа с базами данных в Delphi. Перемещение по записям при помощи кнопок. 38

Задание №20. Создание собственной структуры базы данных 41

Задание №21. Создание заставки для проекта работы с окном формы. 42

Задание №22. Создание приложения для работы с базой данных MS Access. 44

Задание №23. Проектирование интерфейса приложения для работы с базой данных 46

Задание №24. Работа с типизированными файлами. 47

Задание №25. Создание приложение Органайзер 50

Задание №26. Работа с компонентом StringGrid для создания электронных таблиц 53

Задание №27. Программирование графических тестов. 54

Задание №28. Создание программы – тест. 56

Задание №29. Использование генератора случайных чисел при решении задач. 58

Задание №30. Создание проекта игры DXBALL. 59

Задание №31. Создание простых проектов. 61

Задание №32. Создание приложения Многооконный редактор 62

Задание №33. Закрепление полученных знаний по темам: графика, диалоги, меню, компоненты Delphi и их свойства 66

Задание №34. Создание приложение для шифрования данных методами Цезаря и Аффинной системой 68

Задание №35. Проверка знаний по теме: Создание программ в среде программирования Delphi 72

ВОПРОСЫ для самоконтроля. 73

Перечень основной и дополнительной литературы 74

Введение.

Delphi – это система визуального объектно-ориентированного программирования, имеющая две характерные особенности: создаваемые ею программы являются кросс-платформенными, а сама она относится к классу инструментальных средств ускоренной разработки программ (Rapid Application Development, RAD).

Объектно-ориентированное программирование (ООП) основано на объектах. Объект – это фрагмент кода, который обеспечивает выполнения некоторых операций, объединяет переменные и методы управления ими. Любое приложение состоит из объектов. ООП основано так же на событиях. Приложение взаимодействует с ОС, отслеживая возникающие в нем события, и реагирует на необходимые события. Внутри приложения объекты так же взаимодействуют друг с другом, генерируя события и реагируя на них. Объект - это сложная структура, свойства и поведение составных частей которого находятся во взаимодействии.

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

Наследование. Если надо создать новый класс, лишь немного отличающейся от старого, то совершенно нет необходимости в переписывании заново уже существующих полей, свойств и методов, достаточно объявить, что новый класс является потомком или дочерним классом от старого, который называется предком или родительским классом и добавляются туда новые поля, методы и свойства. В Object Pascal все классы являются потомками от класса TObject.

Полиморфизм – это технология, которая позволяет родительский объект установить равным одному или более дочерним объектам. Полиморфизм – это применение одних и тех же методов у разных потомков. Вызов переменной объекта будет приводить к вызову кода, соответствующему конкретному экземпляру объекта, хранящемуся в переменной. Объекту, как экземпляр указателя объектного типа может быть присвоен адрес любого экземпляра любого из дочерних типов.

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

Свойство – это поле, доступное для чтения и записи через соответствующие методы. Свойство описывается как поле, но впереди ставиться буква f.

Класс – это набор правил, которые описывают, как строить объект. Процедуры и функции класса называются методами. Объявления класса всегда начинается с буквы T. Данный тип называется объектным типом.

Компонент – это объект, который создается во время разработки программы (умеет себя строить сам).

Событие – это воздействие пользователя, аппаратуры или иных программ на объект.

Форма – объект (даже компонент) класса TForm. Форма обладает: свойствами, например, Caption – заголовок, методами, например, Activate, Paint …; событиями, например, OnClose, OnCreate, OnActivate, OnClick.

Проекты

Проект – это набор файлов, из которых состоит создаваемое приложение.

Название

Назначение

Dpr

Файл проекта

Хранит информацию обо всем проекте

Pas

Модуль

Хранит в себе программный код

Dfm

Файл форм

Бинарный список свойств для всех компонентов, входящих в форму

Dof

Файл опций

Устанавливает значения опций компилятора

Res

Файл ресурсов

Хранит ресурсы проекта

Структура проекта:

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run;

end.

Модули - это программные единицы, предназначенные для размещений фрагментов программ. Следующий фрагмент программы является синтаксически правильным вариантом модуля:

unit Unit1;

interface // Секция интерфейсных объявлений

implementation // Секция реализации

end.

IDE – (Integrated Development Environment) интегрированная среда разработчика.

Составляющие:

  1. Главное окно (панель быстрого доступа и палитра компонентов)

  2. Инспектор объектов (для отображения свойств и событий)

  3. Форма (для визуализации приложения)

  4. Редактор (для написания кода)

Некоторые команды главного меню

Меню

Опция

Назначение

File

New

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

NewApplication

Создает новый проект

NewForm

Создает новую форму

Open

Открывает файл

Reopen

Повторное открытие

Save

Сохраняет текущий файл с заранее заданным именем

Save As

Сохраняет текущий файл с новым именем

Save Project As

Сохраняет текущий проект с новым именем

Save All

Сохраняет все файлы проекта

Close

Закрывает текущий файл

Close All

Закрывает все файлы проекта

Exit

Выход

Edit

Cut

Вырезает выделенную часть теста

Copy

Копирует выделенную часть теста

Paste

Вставляет выделенную часть теста

Delete

Удаляет выделенную часть теста

View

Form

Показывает список форм проекта

Unit

Показывает список модулей проекта

Project

Compile

Компилирует модули проекта

Run

Run

Запускает приложение на выполнение

Step Over

Пошаговое выполнение программы

Trace Into

Пошаговое выполнение программы, с заходом в подпрограммы

Program Reset

Завершает выполнение программы

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

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

Типы данных это специальные конструкции языка, которые рассматриваются компилятором как образцы для создания других элементов программы, таких как переменные, константы и функции.

К основным типам данных языка Delphi относятся:

• целые числа (integer);

• дробные числа (real);

• символы (char);

• строки (string);

• логический тип (boolean).

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

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

Массивы. Отличительная особенность массивов заключается в том, что все их компоненты по сути данные одного типа. Эти компоненты можно легко упорядочить и обеспечить доступ к любому из них простым указанием его порядкового номера. Описание типа массива задается следующим образом:

<имя типа> = array [ <сп.инд.типов> ] of <тип>; Например, a,b: array [1..10] of Real;

Инструкции выбора: if-then-else и case.

1. if Условие then begin {инструкции, которые выполняются, если условие истинно} end else begin {Инструкции, которые выполняются, если условие ложно} end ;

Примечание: если между begin и end находится только одна инструкция, то слова begin и end можно не писать.

2. case Выражение of Список1_Констант: begin { инструкции } end; Список2_Констант: begin { инструкции } end; СписокJ_Констант: begin { инструкции } end; end;

Циклы. Инструкция for

for Счетчик:=НачальноеЗначение to КонечноеЗначение do begin { инструкции } end;

Средства отладки в Delphi.

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

Таблица режимов отладки в Delphi:

Пункт меню

Клавиша

Действие

RunRun

F9

Запускает приложение в обычном режиме. В основном используется для выполнения программы до определенного места (точки останова – breakpoint).

RunStep Over

F8

Пошаговое выполнение программы без захода в подпрограммы. Используется для проверки правильности работы процедуры или функции без захода в нее.

RunTrace Into

F7

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

RunRun to Cursor

F4

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

RunShow Execution Point

-

Доступна только во время отладки программы. Открывает строку редактора и показывает местоположение выполняемой в настоящий момент строки.

RunProgram Pause

-

Доступна только во время выполнения приложения. Останавливает выполнение программы.

RunProgram Reset

Ctrl-F2

Доступна только во время выполнения приложения. Прекращает выполнение программы и возвращает в среду разработчика.

Точка останова.

Используется для отладки программы, начиная с определенного места. Поместить ее в редактор можно следующими способами:

  1. нажать левую клавишу мыши в левой части редактора

  2. нажать клавишу F5 в текущей строке

  3. выбрать пункт главного меню RunAdd BreakpointSource Breakpointуказать номер строки, где будет располагаться точка останова.

  4. Просмотреть значения переменных можно в сплывающей подсказке при наведении на них мыши или в окне редактора Watch .

Просмотр значений в поле Watch.

Окно просмотра значений переменных или их арифметических выражений. Вызывается следующим образом: из главного меню RunAdd Watch или комбинацией клавиш Ctrl-F5.

Таблица "горячих" клавиш редактора

Комбинация клавиш

Действие

Shift+Ctrl+C

Автоматическое заполнение данными (создание метода, описание свойства и т. д.) в секции implementation (interface).

Shift+Ctrl+

Быстрый поиск метода (свойства, поля и т.д.) в секции interface .

Shift+Ctrl+

Быстрый поиск метода (свойства, поля и т.д.) в секции implementation .

Shift+Ctrl+

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

Shift+Ctrl+

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

Ctrl+лев. кн. мыши

Переходит в секцию interface для данного метода (свойства и т. д.), или открывает нажатый модуля.

Ctrl+J

Всплывающий список шаблонов процедур, функций, массивов, стандартных операторов, констант и т. д.

Ctrl+C

Копирует выделенную часть текста.

Ctrl+X

Вырезает выделенную часть текста..

Ctrl+V

Вставляет текст из буфера.

Ctrl+Z

Отменяет предыдущие действие.

Shift+Ctrl+Z

Выполняет отмененное действие.

Del

Удаляет выделенный текст.

Shift+End

Выделяет строку, от места положения курсора.

Shirt+

Выделяет строку, от места положения курсора (курсор переходит на верхнюю строку).

Shift+

Выделяет строку, от места положения курсора (курсор переходит на верхнюю строку).

Alt+F4

Закрывает текущий модуль.

Ctrl+S

Сохраняет изменения в коде.

Alt+G

Переходит на введенный номер строки.

Ctrl+F

Находит введенный фрагмент текста.

Ctrl+Y

Удаляет строку на которой расположен курсор.

Ctrl+пробел

Всплывающий список классов, объектов, методов, свойств и т. д.

Ctrl+

Переход курсора на слово правее данного.

Ctrl+

Переход курсора на слово левее данного.