Автор работы: Пользователь скрыл имя, 20 Мая 2015 в 19:21, курсовая работа
Для выполнения данной курсовой работы необходимо разработать алгоритм решения поставленного задания, правильно указав последовательное выполнение соответствующих команд для получения необходимых результатов.
Цель работы заключается в том, чтобы правильно составить алгоритм поставленной задачи по обработке типизированного файла, разработать и отладить программу, реализующую разработанный алгоритм.
8. Отобразить содержимое массива В в таблице на экранной форме.
9. Конец.
Анализируя требования к функциям разрабатываемого приложения под разработанную экранную форму можно выделить следующие программные модули:
Каждый из вышеприведенных модулей реализуем при помощи процедуры. Модули 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 ОПИСАНИЕ ПРОГРАММНЫХ МОДУЛЕЙ
В программе используется глобальная переменная 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:
Процедура ShowComp предназначена для вывода информации о компьютере в поля формы. Синтаксис: ShowComp(Comp:TComp). Где Comp – запись, хранящая информацию о компьютере.
Процедура ShowCompInGrid предназначена для вывода информации о компьютере в поля таблицы. Синтаксис:
ShowCompInGrid(Comp:TComp; Sgr:TStringGrid;Row:integer).
где Comp – запись, хранящая информацию о компьютере,
SGr – таблица, в которую производится вывод,
Row – номер строки, в которую выводится информация.
Процедура ShowAComp предназначена для вывода информации о всех компьютерах из массива AComp в поля таблицы. Синтаксис:
ShowAComp(AComp:ATComp;Sgr:
где AComp – массив записей, хранящий информацию о компьютерах,
SGr – таблица, в которую производится вывод.
Алгоритм процедуры приведен на рисунке А.4.
Эта процедура является обработчиком события onClick для объектa NOpen, то есть запускается при щелчке на указанном объекте. В теле этого вызывается стандартный диалог открытия файла, в случае, если диалог был завершен успешно, имя файла сохраняется в переменной FName, производится чтение содержимого исходного файла в массив AComp, а затем его содержимое выводится на форму при помощи процедуры ShowAComp. Алгоритм процедуры приведен на рисунке А.2.
Процедура NShowClick является обработчиком события onClick для объектa NShow. В ней тоже происходит чтение файла в массив AComp и вывод содержимого на форму. Однако в этой процедуре не выполняется запуск диалога открытия файла, а производится чтение текущего файла, имя которого занесено в FName.
Эта процедура является обработчиком события onClick для объектa NSaveAs, то есть запускается при щелчке на указанном объекте. В теле этого вызывается стандартный диалог сохранения файла, в случае, если диалог был завершен успешно, имя файла сохраняется в переменной FName, производится сохранение содержимого массива AComp в файл с указанным именем. Алгоритм процедуры приведен на рисунке А.3.
Процедура NSaveClick является обработчиком события onClick для объектa NSave. В ней тоже происходит сохранение содержимого массива AComp в файл на жестком диске, однако в этой процедуре не выполняется запуск диалога сохранения файла, а производится сохранение в текущий файл, имя которого занесено в FName.
Процедура 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