Разработка программы при помощи языка программирования языка Delphi

Автор работы: Пользователь скрыл имя, 20 Мая 2015 в 19:21, курсовая работа

Описание работы

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

Файлы: 1 файл

Разработка программы при помощи языка программирования языка Delphi.docx

— 495.97 Кб (Скачать файл)

8. Отобразить содержимое массива  В в таблице на экранной  форме.

9. Конец.

Анализируя требования к функциям разрабатываемого приложения под разработанную экранную форму можно выделить следующие программные модули:

  1. вывод информации о разработчике программы и задании на курсовой проект;
  2. создание нового типизированного файла, с информацией о компьютерах (инициализация временного массива записей );
  3. сохранение содержимого файла в типизированном файле на жестком диске;
  4. сохранение содержимого файла в типизированном файле на жестком диске под новым именем;
  5. вывод информации о компьютере текущей записи массива в поля ввода на экранной форме;
  6. перенос информации из типизированного файла в динамический массив и вывод содержимого на форме;
  7. продвижение к следующей записи в массиве;
  8. продвижение на предыдущую запись массива;
  9. перенос информации из полей ввода в поля текущей записи из массива;
  10. добавление новой записи в массив;
  11. удаление текущей записи из массива;
  12. поиск записей по какому-либо критерию и вывод результатов на экранную форму;
  13. вывод содержимого динамического массива на объекте типа TStringGrid.

Каждый из вышеприведенных модулей реализуем при помощи процедуры. Модули 1,2, 3, 4, 6 будут обработчиками нажатий на соответствующие пункты главного меню. Для запуска модулей 7, 8, 9, 10, 11, 12 предусмотрим экранные кнопки на форме, для чего поместим на форму объекты типа TBitButton. А сами процедуры будут реализованы как обработчики нажатия на соответствующие кнопки. Модули 5, 13 реализуем как отдельную процедуру.

Cоставим алгоритм приложения, который представлен в приложении на рисунке A.1. На алгоритме приведены основные события экранной формы. В этом алгоритме:

блок №3 реализован процедурой NOpenClick,

блок №4 процедурой NSaveClick,

блок №5 - процедурой NShowClick,

блок №6 - процедурой NSaveAsClick,

блок №7 - процедурой NCreateClick,

блок №8 реализован процедурой BBDeleteClick,

блок №9 процедурой NInfoClick,

блок №10 - процедурой BBNextClick,

блок №11 - процедурой BBPrevClick,

блок №12 - процедурой BBUpdateClick,

блок №13 - процедурой BBAddClick,

блок №14 - процедурой BBSearchClick,

блок №15 - процедурой NExitClick.

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

 

3 ОПИСАНИЕ ПРОГРАММНЫХ МОДУЛЕЙ

 

3.1 Описание  переменных и объектов

 

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

Для организации интерфейса с пользователем были разработаны экранные формы, в результате чего на экранной форме Form1 поместили элементы, приведенные в таблице 3.1

 

Таблица 3.1– Описание визуальных объектов на форме Form1

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

Тип

Назначение

MainMenu1

TMainMenu

главное меню

NOpen, NSave, NSaveAs, NCreate, NExit, NInfo, NShow

TMenuItem

пункты главного меню «Открыть», «Сохранить», «Сохранить как», «Создать», «Выход», «Информация», «Показать»

EName, EHDD, ERAM, EMonitor,

TEdit

поля для ввода данных о наименовании компьютера, объеме диска, памяти, типе монитора.

RGrInet

TRadioGroup

поле для ввода информации о подключении к интернет

SGrid1

TStringGrid

вывод содержимого файла в виде таблицы

BBPrev

TBitBtn

кнопка с надписью «Предыдущая запись»

BBNext

TBitBtn

кнопка с надписью «Следующая запись»

BBDelete

TBitBtn

кнопка с надписью «Удалить»

BBAdd

TBitBtn

кнопка с надписью «Добавить»

BBUpdate

TBitBtn

кнопка с надписью «Редактировать»

BBSearch

TBitBtn

кнопка с надписью «Поиск»

OpenDlg1

TOpenDialog

стандартный диалог открытия файлов

SaveDlg

TSaveDialog

стандартный диалог сохранения файла


 

В разделе var опишем переменные, приведенные в таблице 3.2

 

 

Таблица 3.2– Переменные программы

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

Тип

Назначение

F

file of TComp

типизированный файл с данными о компьютерах

Comp

TComp

информация об одном компьютере

AComp

array of TComp

данные обо всех компьютерах в виде массива

CurK

integer

номер текущей записи в массиве AComp

Fname

string

имя текущего (рабочего) файла


 

Для хранения данных о компьютере разработаем составной тип данных TComp c полями, приведенными в таблице 3.3

 

Таблица 3.3 – Информационные поля о компьютере

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

Тип

Назначение

Name

string[20]

наименование компьютера

HDD

real

объём жесткого диска

RAM

integer

объём оперативной памяти

Monitor

string[20]

тип монитора

Inet

boolean

наличие подключения к интернет


 

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

 

Таблица 3.4 Пользовательские процедуры и обработчики событий

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

Обр-к

Назначение

Строки

GetComp

-

поиск компьютера по имени

78-89

ShowComp

-

вывод информации о компьютере на форму

90-101

ShowCompInGrid

-

вывод информации о компьютере в таблицу

102-114

ShowAComp

-

вывод содержимого массива FComp в таблицу

115-127

BBAddClick

+

добавление новой записи о новом компьютере

128-149

BBPrevClick

+

переход на предыдущую запись

150-157

BBNextClick

+

переход на следующую запись

158-165

NSaveClick

+

сохранение текущего файла

166-179

NSaveAsClick

+

запуск диалога и сохранение в файле с заданным именем

180-194

NOpenClick

+

запуск диалога и открытие файла

195-216

BBDeleteClick

+

удаление текущей записи

217-230

NCreateClick

+

инициализация массива AComp

231-237

FormCreate

+

инициализация шапки таблицы

238-247

BBUpdateClick

+

обновление записи в массиве данными из полей ввода

248-260

NShowClick

+

вывод содержимого текущего файла на форму

261-278

BBSearchClick

+

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

279-312

NInfoClick

+

вывод информации о разработчике

313-317

NExitClick

+

выход из приложения

318-322


 

Более подробно некоторые процедуры будут рассмотрены далее.

Кроме приведенных объектов, в разделе uses подключается модуль Unit2. В модуле Unit2 приведена форма AboutBox, на которой выводится информация о разработчике приложения и задании проекта.

 

3.2 Описание пользовательских процедур

 

Функция GetComp предназначена для поиска компьютера в массиве по имени. Синтаксис: GetComp(name:string;AComp:ATComp;var Comp:TComp):boolean. Где name – наименование компьютера, AComp – массив в котором производится поиск, Comp – объект, в который возвращается найденный объект. Если поиск удачен, то функция возвращает значение true, иначе – false.

Процедура ShowComp предназначена для вывода информации о компьютере в поля формы. Синтаксис: ShowComp(Comp:TComp). Где Comp – запись, хранящая информацию о компьютере.

Процедура ShowCompInGrid предназначена для вывода информации о компьютере в поля таблицы. Синтаксис:

ShowCompInGrid(Comp:TComp; Sgr:TStringGrid;Row:integer).

где Comp – запись, хранящая информацию о компьютере,

SGr – таблица, в которую производится  вывод,

Row – номер строки, в которую  выводится информация.

Процедура ShowAComp предназначена для вывода информации о всех компьютерах из массива AComp в поля таблицы. Синтаксис:

ShowAComp(AComp:ATComp;Sgr:TStringGrid).

где AComp – массив записей, хранящий информацию о компьютерах,

SGr – таблица, в которую производится  вывод.

Алгоритм процедуры приведен на рисунке А.4.

 

3.3 Описание процедуры BOpenClick

 

Эта процедура является обработчиком события onClick для объектa NOpen, то есть запускается при щелчке на указанном объекте. В теле этого вызывается стандартный диалог открытия файла, в случае, если диалог был завершен успешно, имя файла сохраняется в переменной FName, производится чтение содержимого исходного файла в массив AComp, а затем его содержимое выводится на форму при помощи процедуры ShowAComp. Алгоритм процедуры приведен на рисунке А.2.

Процедура NShowClick является обработчиком события onClick для объектa NShow. В ней тоже происходит чтение файла в массив AComp и вывод содержимого на форму. Однако в этой процедуре не выполняется запуск диалога открытия файла, а производится чтение текущего файла, имя которого занесено в FName.

 

3.4 Описание процедуры BSaveAsClick

 

Эта процедура является обработчиком события onClick для объектa NSaveAs, то есть запускается при щелчке на указанном объекте. В теле этого вызывается стандартный диалог сохранения файла, в случае, если диалог был завершен успешно, имя файла сохраняется в переменной FName, производится сохранение содержимого массива AComp в файл с указанным именем. Алгоритм процедуры приведен на рисунке А.3.

Процедура NSaveClick является обработчиком события onClick для объектa NSave. В ней тоже происходит сохранение содержимого массива AComp в файл на жестком диске, однако в этой процедуре не выполняется запуск диалога сохранения файла, а производится сохранение в текущий файл, имя которого занесено в FName.

 

3.5 Процедуры навигации и редактирования

 

Процедура BBPrevClick является обработчиком события onClick для объектa BBPrev. Предназначена для перехода не предыдущую запись, для чего номер текущей записи CurK уменьшается на 1 и выводится на форму запись AComp[CurK] при помощи ShowComp. Следует заметить, что если текущая запись первая, то нажатие на кнопку переводит указатель на последнюю запись массива.

Процедура BBNextClick является обработчиком события onClick для объектa BBNext. Предназначена для перехода не следующую запись, для чего номер текущей записи CurK увеличивается на 1, а на форму выводится запись AComp[CurK] при помощи ShowComp. Следует заметить, что если текущая запись последняя, то нажатие на кнопку переводит указатель на первую запись массива.

Процедура BBDeleteClick является обработчиком события onClick для объектa BBDelete. Предназначена для удаления записи, для чего все записи после позиции CurK сдвигаются на одну позицию влево, а размерность массива уменьшается на 1.

Процедура BBUpdateClick является обработчиком события onClick для объектa BBUpdate. Предназначена для изменения данных о компьютере. В процедуре содержимое из полей ввода формы переносится в соответствующие поля текущего компьютера под номером CurK.

Процедура BBAddClick является обработчиком события onClick для объектa BBAdd. Предназначена для добавления данных о новом компьютере. В процедуре содержимое из полей ввода формы переносится в соответствующие поля компьютера, размер массива AComp увеличивается на 1 и новая запись добавляется в конец массива.

Процедура BBSearchClick является обработчиком события onClick для объектa BBSearch. Предназначена для поиска компьютеров по какому либо критерию. В процедуре анализируется содержимое из полей ввода формы, если содержимое пустое, то в поиске это поле не учитывается, если же нет, то происходит поиск записей с указанным значением соответствующего поля. Условия по всем полям объединяются условием И. Содержимое выборки заносится в массив Ares и выводится на форму. Следует заметить, что по текстовым полям «Наименование компьютера», «Тип монитора» выполняется сравнение не на полное соответствие строк, а на наличие указанной подстроки. То есть, если поле содержит искомый фрагмент и еще какую-то информацию, то такой компьютер тоже будет выведен.

 

 

4 ИНСТРУКЦИЯ ОПЕРАТОРУ

 

Разработанная программа представляет собой исполняемый файл Computers.exe размером 493 568 байт. В программе выполняется обработка типизированных файлов.

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

 

Рисунок 4.1 – Главное окно программы

 

Главное меню содержит пункты:

- «Информация» (при нажатии запускается диалог с информацией о задании и разработчике, изображенный на рисунке 4.2);

Информация о работе Разработка программы при помощи языка программирования языка Delphi