Окно просмотра дерева объектов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Окно просмотра дерева объектов



МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

Черниговский государственный технологический университет

 

ОСНОВЫ ПРОГРАММИРОВАНИЯ

В СРЕДЕ DELPHI

 

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторному практикуму и самостоятельной работе по дисциплине

«Программирование»

для студентов направления подготовки 0915 –“Компьютерная инженерия”

Часть первая

 

 

УТВЕРДЖЕНО

на заседании кафедры

информационных и компьютерных систем

протокол № 6 от 08.06.06

 

Чернигов ЧГТУ 2006


Основи програмуванняу середовищі Delphi. Методичні вказівки до лабораторного практикуму та самостійної роботи з дисципліни «Програмування» для студентів напряму підготовки 0915 – „Комп’ютерна інженерія”, частина перша. /Укл.: Бивойно П.Г., Бичко В.А., Гора Н.О., Павловська Д.В. Павловський В.І. – Чернігів: ЧДТУ, 2006. – 104 с. Рос. мовою.

 

Составители: Бивойно Павел Георгиевич, канд. техн. наук, доцент

Бычко Владимир Анатольевич, канд. техн. наук, доцент

Гора Наталья Олеговна, ассистент

Павловская Дарья Владимировна, студент-магистрант

Павловский Владимир Ильич, канд. техн. наук, доцент

 

 

Ответственный за выпуск: Бивойно П.Г., декан факультета электронных и информационных технологий, канд. техн. наук, доцент

 

 

Рецензент: Нестеренко С.А., канд. техн. наук, доцент кафедры информационных и компьютерных систем Черниговского государственного технологического университета


СОДЕРЖАНИЕ

1 Лабораторная работа № 1. Знакомство с интегрированой средой разработки (ИСР)“Delphi 7”. 6

1.1 Краткие теоретические сведения о ИСР “Delphi 7”. 6

1.1.1 Конструктор стартовой формы.. 6

1.1.2 Главное окно ИСР “Delphi 7”. 6

1.1.3 Окно просмотра дерева объектов. 8

1.1.4 Окно редактора кода. 8

1.1.5 Окно Object Inspector 11

1.2 Создание простейшего проекта. 15

1.2.1 Разработка интерфейса проекта. 15

1.2.2 Создание процедуры инициализации приложения. 17

1.2.3 Создание процедуры вычисления результата. 18

1.2.4 Улучшение проекта. 20

1.2.5 Сохранение проекта. 21

1.3 Содержание отчета. 22

1.4 Контрольные вопросы и задания. 23

Рекомендованая литература. 23

2 Лабораторная работа № 2. Вещественный тип данных. Расчеты по формулам 24

2.1 Краткие теоретические сведения. 24

2.1.1 Язык программирования Object Pascal 24

2.2 Создание проекта «Расчет по формуле». 31

2.2.1 Создание интерфейса. 32

2.2.2 Создание процедур обработки событий. 34

2.3 Контольный пример. 38

2.4 Трассировка процедуры.. 38

2.5 Содержание отчета. 39

2.6 Контрольные вопросы.. 39

Рекомендованая литература. 39

3 Лабораторная работа № 3. Подпрограммы.. 40

3.1 Краткие теоретические сведения. 40

3.1.1 Правила написания подпрограмм. 40

3.1.2 Способы передачи параметров в подпрограммы.. 44

3.1.3 Расположение подпрограмм. 46

3.1.4 Область действия имен. 47

3.2 Реализация проекта «Процедуры и функции». 48

3.2.1 Создание процедур и функций. 49

3.3 Исследование созданного приложения. 53

3.3.1 Анализ передачи параметров по наименованию.. 53

3.3.2 Анализ передачи параметров по значению.. 54

3.4 Содержание отчета. 54

3.5 Контрольные вопросы.. 54

Рекомендованая литература. 54

4 Лабораторная работа № 4. Логический тип данных и разветвления в программах. 55

4.1 Краткие теоретические сведения. 55

4.1.1 Логический тип данных. 55

4.1.2 Разветвляющиеся алгоритмы.. 56

4.1.3 Программирование разветвлений. 58

4.2 Реализация проекта «Организация разветвлений». 63

4.2.1 Разработка интерфейса проекта. 63

4.3 Содержание отчета. 68

4.4 Контрольные вопросы.. 68

5 Лабораторная работа № 5. Построение циклов с инструкциями „while” и „repeat”. 69

5.1 Краткие теоретические сведения. 69

5.1.1 Циклические алгоритмы.. 69

5.1.2 Инструкция while…do. 69

5.1.3 Инструкция repeat…until 71

5.1.4 Прерывание цикла. 72

5.1.5 Итерационные алгоритмы.. 72

5.1.6 Алгоритмы вычисления сумм бесконечных рядов. 75

5.2 Создание проекта WhileRepeat 77

5.2.1 Разработка интерфейса проекта. 77

5.2.2 Создание процедур и функций. 80

5.3 Задания для расчетно-графической работы № 2. 82

5.4 Содержание отчета. 82

5.5 Контрольные вопросы.. 83

Рекомендованая литература. 83

6 Лабораторная работа № 6. порядковые типы данных и средства их обработки 84

6.1 Краткие теоретические сведения. 84

6.1.1 Порядковые типы данных. 84

6.1.2 Применение инструкции цикла FOR.. 88

6.1.3 Строки символов. 92

6.1.4 Некоторые стандартные процедуры и функции для обработки строк 94

6.2 Создание проекта «Применение цикла for». 97

6.2.1 Разработка формы «Табулирование функции». 97

6.2.2 Разработка формы «Таблица символ-код». 99

6.2.3 Разработка формы «Обработка последовательностей целых чисел» 100

6.2.4 Создание многодокументной (MDI)формы.. 103

6.3 Задание для самостоятельной работы.. 103

6.4 Содержание отчета. 104

Контрольные вопросы.. 104

Рекомендованая литература. 104

Введение

Лабораторные работы служат соединительным звеном между практическими занятиями и самостоятельной работой студентов, во время которой выполняется расчетно-графическая работа. В процессе выполнения лабораторных работ экспериментально проверяются ключевые вопросы курса программирования, приобретаются практические навыки построения и отладки программ, проверяется степень усвоения основных положений предмета. Во время лабораторных занятий студенты знакомятся с типовыми решениями некоторых задач программирования.

Лабораторные работы выполняются на персональных компьютерах в системе программирования Delphi. Предполагается, что студенты знакомы с основами работы на персональном компьютере. Необходимо владеть клавиатурой и мышкой, уметь манипулировать с файлами, знать какой-нибудь редактор текстов. Если таких навыков нет, то студент должен приобрести их во время самостоятельной работы в лаборатории. Можно воспользоваться методическими указаниями «Основы работы на персональном компьютере» для студентов экономических специальностей. Предполагается также, что студенты владеют английским языком в объеме программы средней школы.

Студент обязан до лабораторного занятия прочитать методические указания к лабораторной работе и попытаться выполнить ее самостоятельно. Во время лабораторного занятия студент показывает преподавателю результаты работы, консультируется по возникшим вопросам и завершает работу. Объем выполненной работы может быть разным, в зависимости от того, на какую оценку претендует студент. Когда работа закончена, студент должен защитить ее. Защита заключается в ответах на вопросы по теме лабораторной работы и внесении некоторых изменений в разработанный проект, в присутствии преподавателя. По каждой работе студент должен оформить отчет. Отчеты оформляются с помощью текстового редактора Word на бумаге формата А4, в соответствии с требованиями стандартов на оформление технической документации. Отчет по работе представляется как раздел итогового документа. В конце семестра отчеты сшиваются в единый итоговый документ с титульным листом, подписываются у руководителя, и являются допуском к экзамену. За лабораторную работу студент может получить до трех баллов, с учетом своевременности и качества выполнения всех составляющих роботы. Составляющими являются: отчет, проект и ответы на контрольные вопросы. Оценки, полученные за лабораторные работы, учитываются при выставлении итоговой оценки по модулю и на экзамене. Для получения допуска к экзамену все работы должны быть выполнены и каждая из них оценена не менее чем в 1.8 балла.

1 Лабораторная работа № 1.
Знакомство с интегрированой средой разработки (ИСР)“Delphi 7”

Цели работы:

– Получить навыки работы с основными окнами ИСР.

– Усвоить понятия «компонент», «свойства компонента», «события связанные с компонентами», «процедуры обработки событий».

– Создать простейший проект в ИСР “Delphi 7”.

1.1 Краткие теоретические сведения о ИСР “Delphi 7”

ИСР “Delphi 7” запускается путем выбора иконки “Delphi 7” либо на рабочем столе, либо в меню “ПУСК” подменю “Программы”.

После запуска на экране обычно появляются такие окна:

– Конструктор стартовой формы.

– Главное окно ИСР “Delphi 7”

– Окно просмотра дерева объектов (Object TreeView)

– Окно редактора свойств объектов (Object Inspector)

– Окно редактора кода

Конструктор стартовой формы

Вид конструктора стартовой формы представлен на рисунке 1.1. При запуске ИСР он представляет собой пустое окно, готовое к превращению в окно приложения Windows. Это окно - основа для создания интерфейса будущего приложения. Процесс создания интерфейса заключается в размещении компонентов интерфейса (кнопок, надписей и т.п.) на поверхности конструктора.

Рисунок 1.1 - Конструктор стартовой формы

1.1.2 Главное окно ИСР “Delphi 7”

Главное окно, изображенное на рисунке 1.2, является управляющим центром ИСР “Delphi”. В этом окне находится главное меню, панели инструментов и палитра компонентов.

Рисунок 1.2 - Главное окно

1.1.2.1 Главное меню

С помощью главного меню пользователь общается с ИСР, вызывая команды. Вы можете уже сейчас посмотреть, как работает созданная ИСР заготовка проекта. Для этого выберите из меню команду Run->Run.

На экране должно появиться окно, обладающее всеми свойствами окон Windows. Закройте это окно и вернитесь в ИСР.

Многие функции меню дублируются функциональными клавишами или кнопками на панелях инструментов. Например, запуск проекта можно осуществить с помощью клавиши F9.

1.1.2.2 Панели инструментов

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

1.1.2.3 Палитра компонентов

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

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

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

Для удаления компонента достаточно выделить его щелчком мыши и нажать клавишу Delete.

Окно редактора кода

Окно редактора кода предназначено для редактирования текстов программных модулей (Unit) или файла проекта. Это окно обычно полностью или почти закрыто окном конструктора стартовой формы. Для того, чтобы его активизировать, можно воспользоваться клавишей F12, которая позволяет пользователю переходить от формы к коду и обратно. Следует иметь в виду, что в окне редактора кода может быть несколько закладок, для каждой программной составляющей проекта. Код автоматически корректируется при добавлении или удалении компонент интерфейса.

Рисунок 1.3 – Заготовка исходного текста модуля формы

1.1.4.1 Закладка редактора кода модуля

Окно редактора кода, открытое для редактирования текста модуля, изображено на рисунке 1.3. Для того, чтобы его активизировать, можно воспользоваться функцией меню View->Units.

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

Первая строка модуля является его заголовком. Заголовок модуля всегда начинается служебным словом unit, после которого следует имя модуля. Имя модуля всегда совпадает с именем файла, в котором этот модуль хранится. Файлы с текстами модулей имеют расширение.pas. Если вы хотите изменить имя модуля, то активизируйте окно редактора кода или конструктора формы и вызовите функцию меню File->Save As…. В открывшемся диалоге сохранения файла введите желаемое имя файла (а значит и модуля). Убедитесь, что тип файла установлен Delphi Units(*.pas) и правильно выбрана папка для сохранения модуля. После этого нажмите клавишу «Сохранить» и убедитесь, что имя модуля изменилось. При сохранении текста модуля одновременно сохраняется и описание формы, для которой написан модуль. Описание формы записывается в файл с таким же именем что и модуль, но с расширением.dfm.

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

Заканчивается текст модуля служебным словом end с точкой.

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

В нашем примере на рисунке 1.3 раздел interface состоит из трех частей.

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

Вторая часть, которая начинается служебным словом type, содержит описание класса TForm1, который наследует стандартный класс TForm. Класс TForm описывает свойства и поведение стандартного окна Windows. Класс Tform1, будет содержать информацию о том, чем отличается разрабатываемое окно приложения от стандартного. Все Ваши действия, связанные с визуальным проектированием интерфейса, будут автоматически регистрироваться в описании класса TForm1. Но вы можете вводить в описание класса и свой код, который не связан с визуальным проектированием. Код, написанный в разделе public, будет доступен вне класса, а код, написанный в разделе private, будет доступен только внутри класса.

Третья часть, которая начинается служебным словом var, содержит описание переменной Form1, которое говорит о том, что это объект класса TForm1. Другими словами, здесь объявляется имя проектируемого окна (формы), что дает возможность обращаться к нему при написании процедур и функций.

Основное назначение раздела implementation (раздел реализация) хранить тексты процедур и функций, которые были объявлены в разделе интерфейса. Здесь тоже можно определять типы данных, константы, переменные, а также объявлять и описывать процедуры и функции, но они будут доступны только в пределах данного модуля.

На рисунке этот раздел почти пуст, но именно в этом разделе Вам придется больше всего работать при разработке проекта. Пока же раздел содержит только одну строку {$R *.DFM}. Это директива компилятору, в которой сообщается, что описание формы, для которой написан модуль, находится в файле с таким же именем, как у модуля, но с расширением.dfm.

1.1.4.2 Закладка редактора кода файла проекта

В окне редактора кода можно увидеть и файл проекта (рис.1.4), который фактически является стартовой программой проекта. Этот файл создается автоматически, без участия разработчика, и программисту редко приходится его корректировать. Имя файла совпадает с именем проекта и имеет расширение.dpr. Для просмотра этого файла используйте функцию меню Project->View Source.

Рисунок 1.4 - Окно редактора кода с текстом файла проекта

В языке Pascal, программа всегда начинается стандартным словом program, после которого идет имя программы. Как видите, имя программы это имя проекта. Далее, после служебного слова uses перечисляются модули необходимые для работы программы. Нетрудно заметить, что программа использует модуль формы, который создается при разработке проекта.

Строка {$R *.res}, как и в тексте модуля содержит ссылку на файл ресурсов проекта, который в данном случае содержит пиктограмму приложения. Файл ресурсов также создается системой автоматически.

Исполняемая часть программы находится между служебными словами begin и end.

В программе выполняется три обращения к объекту Application (Приложение), который описан в стандартном модуле Forms. Вначале приложение инициализируется. Затем, с помощью сообщения CreateForm, создается объект Form1, в соответствии с разработанным нами модулем и формой. И, наконец, сообщением Run созданный объект в виде окна с разработанным интерфейсом выводится на экран.

На этом работа программы из файла проекта заканчивается, и начинают работать разработанные Вами модуль и форма.

Окно Object Inspector

Окно Object Inspector (рис.1.5) – окно редактора свойств объектов предназначено для изменения свойств компонентов, или установления связей между событиями компонентов и процедурами их обработки. Это окно может быть активизировано функцией главного меню View-> Object Inspector или клавишей F11. Окно имеет две закладки – Properties (свойства) и Events (события).

Рисунок 1.5 - Окно инспектора объектов

1.1.5.1 Закладка описания свойств объекта

Для того, чтобы получить доступ к свойствам компонента, следует сделать этот объект активным (выделить щелчком мыши), или выбрать его из раскрывающегося списка в верхней части окна Object Inspector. Кроме того, необходимо, чтобы в окне Object Inspector была выбрана закладка Properties.

Список свойств имеет вид таблицы, состоящей из двух колонок. Левая колонка содержит название свойства, а правая – его значение. Значения свойств легко изменить, но способ изменения зависит от типа свойства.

Например, свойства Width и Height (ширина и высота компонента) могут принимать числовые значения, причем эти значения автоматически корректируются при изменении размера компоненты. Поэтому для изменения свойства достаточно изменить размеры окна с помощью мыши, но можно и вписать требуемое число в соответствующей строке правой колонки.

Свойство Caption (заголовок окна) представляется строкой символов. При необходимости изменить его, следует вписать нужный текст в соответствующую строку.

Свойство Enabled (доступность) имеет логический тип и может принимать только два значения True или False, которые выбираются из раскрывающегося списка. Если Вы присвоите этому свойству значение False, то после запуска приложения не сможете закрыть окно, т.к. элементы управления будут недоступны. Используйте в этом случае функцию меню Run-> Program Reset.

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

Некоторые свойства являются сложными, т. е. их значение определяется совокупностью значений других (уточняющих) свойств. На сложные свойства указывает значок «+». Щелчок на этом значке раскрывает список уточняющих свойств. Например, свойство Bordericons определяет, какие кнопки управления окном будут доступны во время работы программы, Так, если свойству biMinimize присвоить значение false, то во время работы проекта кнопка сворачивания окна будет недоступна.

Рядом со значениями некоторых свойств отображается командная кнопка с тремя точками. Это значит, что для задания значения свойства можно воспользоваться дополнительным диалоговым окном. Например, значение сложного свойства Font можно задать путем непосредственного ввода значений уточняющих свойств, а можно воспользоваться стандартным диалоговым окном выбора шрифта.

Возможно, самым главным свойством всех компонентов является свойство Name, имя компонента. Имя позволяет программисту обращаться к компоненту при написании программ. Хотя Delphi каждому компоненту автоматически присваивает имя, которое состоит из названия компонента и его порядкового номера, следует давать компонентам имена, по которым можно легко определить не только тип компонента, но и его назначение. Например, намного удобнее будет работать с именем btnClearAll, чем с именем Button35.

Имена компонент не должны содержать пробелов, могут состоять только из латинских букв и цифр, но начинаться буквой. Обычно имя начинают с трехбуквенного префикса, указывающего принадлежность компонента к определенному типу, например, btn, frm, edt. Большие буквы следует использовать для того, чтобы сделать имя удобочитаемым. Имя btnClearAll намного привлекательнее, чем имя btnclearall, хотя, с точки зрения системы, эти имена одинаковы.

Свойства компонент могут быть упорядочены либо в алфавитном порядке, либо объединены по категориям. Переключение между этими способами представления производится функцией Arrange, контекстного меню, вызываемого правой кнопкой мыши.

1.1.5.2 События и процедуры обработки событий

Рисунок 1.6 - Вкладка “События” окна Object Inspector.

События (Events) – это некоторые, завершившееся во время работы приложения, действия пользователя или приложения. Событиям присваиваются стандартные имена. Ниже, в таблице 1.1 приведены примеры некоторых событий.

  Таблица 1.1 – Некоторые события визуальных компонент
OnClick При щелчке кнопкой мыши
OnMouseDown При нажатии кнопки мыши
OnMouse Up При отпускании кнопки мыши
OnMouseMove При перемещении мыши
OnKeyPress После ввода символа с клавиатуры
OnKeyDown При нажатии клавиши клавиатуры
OnKeyUp При отпускании нажатой клавиши клавиатуры
OnCreate При создании объекта (формы, элемента управления).
OnPaint При появлении окна на экране в начале работы программы, после появления части окна, которая, например, была закрыта другим окном и в других случаях
QnEnter При получении элементом управления фокуса
OnExit При потере элементом управления фокуса
     

 

В Delphi есть возможность запрограммировать реакцию приложения на событие, то есть сделать так, чтобы приложение выполняло некоторую работу в ответ на определенные действия пользователя. Следует учитывать, что значительную часть обработки события берет на себя компонент. Поэтому программист должен разрабатывать процедуру обработки события только в том случае, если реакция на событие отличается от стандартной процедуры или не определена.

В левой колонке вкладки Events перечислены имена событий, которые может воспринимать выбранный компонент. Если для события определена процедура обработки события, то в правой колонке, рядом с именем события, выводится имя этой процедуры. Если процедура не определена, то поле пустое.

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

Для создания процедуру обработки события, нужно сделать двойной щелчок мышью в поле имени процедуры обработки соответствующего события. В результате этого откроется окно редактора кода, в котором будет создан шаблон процедуры обработки события. Шаблон процедуры расположен в разделе Implementation модуля, и мигающий курсор приглашает Вас запрограммировать обработку события. Кроме того, объявление процедуры (ее заголовок) появляется в описании класса Tform1.

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

На рисунке 1.7 показано окно редактора кода с заготовкой процедуры обработки щелчка (Click) по кнопке Button1.

Delphi присваивает процедуре обработки события имя, которое состоит из трех частей. Первая часть имени это имя класса, вторая часть идентифицирует компонент, третья часть идентифицирует событие. В нашем примере класс- TForml, имя компонента – Button1, событие – Click.

Вы можете изменить имя процедуры, но делать это следует в окне Object Inspector.

В окне редактора кода между словами begin и end нужно вписать инструкции, реализующие функцию обработки события.

Редактор кода выделяет ключевые слова языка программирования (procedure, var, begin, end, if и др.) полужирным шрифтом, что делает текст программы более выразительным, и облегчает восприятие структуры программы.

Помимо ключевых слов редактор кода выделяет курсивом комментарии.

При написании кода часто приходится обращаться к полям компонент. Для упрощения ввода имен полей, встроенный редактор кода выводит список имен всех свойств объекта, как только вы нажмете точку после ввода имени компонента. При нажатии клавиши «пробел», имя свойства переносится в текст. Этот список имен, которые можно использовать в данный момент, вызывается и при нажатии комбинации клавиш Ctrl+Пробел.

Рисунок 1.7- Окно редактора кода с шаблоном процедуры

Если необходимо удалить процедуру, то достаточно удалить инструкции, написанные Вами, оставив шаблон пустым. После синтаксической проверки проекта, пустые процедуры исчезнут. Синтаксическую проверку можно вызвать функцией меню Project->Syntax Check.

1.2 Создание простейшего проекта

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

Улучшение проекта

Созданный проект решает задачи, поставленные перед ним, но и имеет некоторые недостатки. Один из них состоит в том, что при подготовке к повторным вычислениям предыдущий результат остается в поле результата, хотя исходные данные меняются. Это создает иллюзию того, что проект работает неправильно. Чтобы устранить этот недостаток, воспользуемся событием onChange для полей Edit1 и Edit2. Это событие происходит тогда, когда содержимое поля изменяется.

Процедура, обрабатывающая это событие должна очищать поле Edit3.

Для создания этой процедуры откройте закладку «События» в окне инспектора объектов. Выберите в окне инспектора объектов компонент Edit1, найдите событие onChange и сделайте двойной щелчок по пустому полю имени. В поле появится имя Edit1Change. Замените имя Edit1Change на имя EditChange. Такую замену мы делаем в связи с тем, что процедура будет связана не только с полем Edit1, но и с полем Edit2.

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

Далее найдите в списке объектов окна инспектора компонент Edit2, установите событие onChange и выберите из списка имен процедур имя EditChange.

Теперь событие onChange обоих компонентов связано с одной и той же процедурой.

Напомним, что процедура должна очищать поле Edit3, а очистку всех полей мы делали в процедуре инициализации. Написать процедуру не сложно, можно даже скопировать одну стоку из ранее написанной процедуры. На рисунке 1.14 приведено окно с текстом этой процедуры.

Рисунок 1.14 – Процедура очистки поля Edit3

Посмотрите, как работает измененное приложение.

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

Сохранение проекта

Для сохранения проекта целесообразно создать специальный каталог на рабочем диске, так как в состав проекта входит много файлов. Можно назвать его Calculator1.

Для сохранения формы и ее модуля следует активизировать форму или текст модуля и вызвать из главного меню функцию File->SaveAs. В открывшемся диалоге сохранения файла нужно ввести имя файла. Имя должно быть понятным, поэтому рекомендуем имя UnitCalculator1. Введите имя. Убедитесь, что установлен тип файла Delphi Units(*.pas) и правильно выбрана папка для сохранения модуля. После этого нажмите клавишу «Сохранить».

Для сохранения файлов проекта следует вызвать из главного меню функцию File->SaveProjectAs. В качестве имени файлов проекта рекомендуем вам имя ProjectCalculator1. Введите имя. Убедитесь, что установлен тип файла DelphiProject(*.dpr) и правильно выбрана папка для сохранения модуля. Теперь нажмите клавишу «Сохранить».

После этого рекомендуем вам заглянуть в папку с проектом и убедиться, что файлы там действительно есть и размер у них не нулевой. Обязательно должны быть файлы ProjectCalculator1.dpr, UnitCalculator1.dfm, UnitCalculator1.pas.

Завершите сохранение файла копированием папки с проектом на личную дискету.

Сохранив проект, можете выти из Delphi.

Чтобы продолжить работу с проектом, запустите Delphi и вызовите из главного меню функцию File->Open Project. В появившемся диалоге открытия файла найдите папку с файлом проекта и откройте его.

1.2.5.1 Продолжение работы с проектом на другом компьютере

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

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

Запустить Delphi и удалить из проекта, созданного по умолчанию, форму и модуль формы.

С помощью функции меню Project–>Add to Project добавить в проект ранее созданные формы и модули. Если форм несколько, то последней следует добавить стартовую форму.

После этого можно работать с приложением.

При такой технологии сохранять достаточно только файлы с расширениями.pas и.dfm.

1.3 Содержание отчета

– Наименование работы.

– Цель работы.

– Рисунок с изображением интерфейса одного из проектов (ProjectCalculator1 или доработанного ProjectLab1).

– Перечень компонент, использованных в проекте, с описанием их основных свойств.

– Текст модуля с пояснениями в виде комментариев для всех его основных элементов.

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

– Выводы о работоспособности приложения и о возможностях Delphi программных проектов.

1.4 Контрольные вопросы и задания

– Порядок выполнения проекта.

– Работа с палитрой компонент.

– Работа с окном инспектора объектов.

– Работа в окне редактора кода.

– Свойства использованных в проекте компонентов.

– События, обрабатываемее в данном проекте.

– Файл проекта, его содержание и порядок выполнения.

– Модуль формы, его содержание и назначение разделов.

– Как сохранить проект.

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

– Обеспечить изменение надписи в компоненте Label1 в соответствии с выполненной операцией.

– Установить на форме кнопки, позволяющие увеличить и уменьшить на 1 размер шрифта в полях для ввода данных и написать соответствующие процедуры.

Рекомендованая литература

1. Культин Н. Delphi 6. Программирование на Object Pascal. – СПб.:БХВ-Петербург,2002.

 

Var

< имя >: < тип >;

где: < имя > - имя переменной;

< тип >- имя типа для объявляемой переменной.

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

В разделе может быть и несколько инструкций объявления, например:

Var

Form1: TForm;

а, b, y: Real; i: Integer;

Разделы описаний могут находиться в разделе модуля interface, в разделе модуля implementation, в разделе описаний каждой процедуры или функции.

2.1.1.4 Вещественный тип данных

Данные этого типа записываются в форме с плавающей точкой. При такой записи число представляется в виде мантиссы и порядка. Мантисса всегда имеет значение большее или равное 1, но меньшее 10. Порядок может быть положительным или отрицательным и показывает, на сколько порядков реальное число меньше или больше мантиссы. Преимущество такой формы записи состоит в том, что при записи чисел не приходится писать незначащие нули. Длина записи зависит только от количества значащих цифр и не зависит от значения числа. Например, числа 123450000 и 0.0000000012345 будут представлены как 1.2345е+8 и 1.2345е-9. Это удобно как при записи чисел на бумаге, так и при записи чисел в памяти компьютера.

В приведенной ниже таблице приведены характеристики основных вещественных типов, используемых в Object Pascal.


Таблица 2.1 – Характеристики основных вещественных типов

Тип Диапазон Количество десятичных цифр в мантиссе Длина в байтах
Single 1.5 x 10^-45.. 3.4 x 10^38 7-8  
Double 5.0 x 10^-324.. 1.7 x 10^308 15-16  
Extended 3.6 x 10^-4951.. 1.1 x 10^4932 19-20  

 

При программировании допускается использовать и тип Real, который часто использовался в языке Pascal. В последних версиях Delphi он эквивалентен типу Double.

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

2.1.1.5 Выражение

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

Таблица 2.2 Примеры записи выражений

Формула Выражение
(a+b)/(a-b)/x
sqrt(sqr(sin(x))+b)
exp(2.5*x)
exp((1.5+b)*ln(a))

 

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

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

Основные арифметические операции, применимые для данных вещественного типа приведены в таблице 2.3.


 

Таблица 2.3- Арифметические операции для данных вещественного типа
+ Сложение
- Вычитание
* Умножение
/ Деление

 

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

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



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 205; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 52.14.221.113 (0.125 с.)