Министерство образования и науки РФ
Федеральное государственное бюджетное
образовательное учреждение
высшего профессионального образования
«ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
ФАКУЛЬТЕТ АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
КАФЕДРА ЭП и АПУ
Курсовая работа
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ
ПО ТЕМЕ «БАЗА ДАННЫХ КОМПЬЮТЕРНЫХ ИГР»
Выполнил студент гр. ЭП-21 Е. А. Аганин
Проверил преподаватель В. С. Грудинин
Киров, 2012
Оглавление
Y
1. Постановка задачи 3
2. Структура программного продукта. 3
3. Структура Базы Данных 4
4. ОСНОВНАЯ ФОРМА 5
Экранная форма: 5
Код: 6
5. ФОРМА СОРТИРОВКИ 9
Экранная форма: 9
Код: 10
6. ФОРМА ПОИСКА 11
Экранная форма: 11
Код: 12
7. ФОРМА ФИЛЬТРАЦИИ 13
Экранная форма: 13
Код: 14
8. ФОРМА ЗАПРОСА 16
Экранная форма: 16
Код: 17
9. ФОРМА «ОБ АВТОРЕ» 20
Постановка задачи
Создать программный продукт, предназначенный для учёта компьютерных игр.
В программе должны быть предусмотрены:
Добавление записи
Удаление записи
Редактирование записи
Поиск записи по различным полям
Сортировка по различным полям
Фильтрация
Запрос
Навигация по таблице
Отчет
Для реализации задачи выбран язык Borland Delphi 7.0 Enterprise.
Структура программного продукта.
-
Unit1.pas
Главный модуль программы
Unit2.pas
Модуль формы, в которой выводятся дополнительные сведения
Unit3.pas
Модуль формы сортировки записей
Unit4.pas
Модуль формы поиска записей
Unit5.pas
Модуль формы фильтрации записей
Unit6.pas
Модуль формы запроса
Структура Базы Данных
База данных состоит из двух таблиц:
Main.db – основная таблица, содержащая следующие поля:
Nazv – Название игры (+)
God – Год выпуска (N)
Janr – Жанр (A)
Razr – Разработчик (A)
Izdat – Издатель (A)
Treb – Системные требования (A)
Cost – Цена за 1 копию (руб.) (N)
Nalichie.db – таблица учёта количества копий и их общей стоимости
NNazv – Название игры (+)
Kolkop – Количество копий (N)
NCost – Цена за 1 копию (руб.) (N)
SumCost – Общая стоимость (руб.) (N)
Основная форма
Экранная форма:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, Grids, DBGrids, unit2, ExtCtrls, DBCtrls, unit3, unit4, unit5,
XPMan, unit6, StdCtrls, jpeg, RpCon, RpConDS, RpDefine, RpRave;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
DBNavigator1: TDBNavigator;
DBNavigator2: TDBNavigator;
XPManifest1: TXPManifest;
Image1: TImage;
Memo1: TMemo;
RvProject1: TRvProject;
RvDataSetConnection1: TRvDataSetConnection;
Button1: TButton;
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.N2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
Form3.show;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
form4.show;
end;
procedure TForm1.N6Click(Sender: TObject);
begin
Form5.Show;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
form6.show;
end;
procedure TForm1.N9Click(Sender: TObject);
begin
showmessage('Автор программы студент группы ЭП-21 Аганин Е.А.');
end;
procedure TForm1.N10Click(Sender: TObject);
begin
showmessage('Курсовая работа по дисциплине "Информатика"');
end;
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
if DataModule2.Table1Nazv.Value='Crysis' then begin
Memo1.Lines.LoadFromFile('pictures/Crysis.txt');
Image1.Picture.LoadFromFile('pictures/Crysis.jpg');
end;
if DataModule2.Table1Nazv.Value='Fallout: New Vegas' then begin
Memo1.Lines.LoadFromFile('pictures/Fallout New Vegas.txt');
Image1.Picture.LoadFromFile('pictures/Fallout New Vegas.jpg');
end;
if DataModule2.Table1Nazv.Value='Grand Theft Auto IV (GTA IV)' then begin
Memo1.Lines.LoadFromFile('pictures/Grand Theft Auto IV.txt');
Image1.Picture.LoadFromFile('pictures/Grand Theft Auto IV.jpg');
end;
if DataModule2.Table1Nazv.Value='Jagged Alliance: Снова в Деле' then begin
Memo1.Lines.LoadFromFile('pictures/Jagged Alliance.txt');
Image1.Picture.LoadFromFile('pictures/Jagged Alliance.jpg');
end;
if DataModule2.Table1Nazv.Value='Making History 2: Другая война' then begin
Memo1.Lines.LoadFromFile('pictures/Making History 2.txt');
Image1.Picture.LoadFromFile('pictures/Making History 2.jpg');
end;
if DataModule2.Table1Nazv.Value='Medal Of Honor' then begin
Memo1.Lines.LoadFromFile('pictures/Medal Of Honor.txt');
Image1.Picture.LoadFromFile('pictures/Medal Of Honor.jpg');
end;
if DataModule2.Table1Nazv.Value='S.T.A.L.K.E.R.: Зов Припяти' then begin
Memo1.Lines.LoadFromFile('pictures/S.T.A.L.K.E.R. Зов Припяти.txt');
Image1.Picture.LoadFromFile('pictures/S.T.A.L.K.E.R. Зов Припяти.jpg');
end;
if DataModule2.Table1Nazv.Value='Stronghold 3' then begin
Memo1.Lines.LoadFromFile('pictures/Stronghold 3.txt');
Image1.Picture.LoadFromFile('pictures/Stronghold 3.jpg');
end;
end;
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
if DataModule2.Table1Nazv.Value='Crysis' then begin
Memo1.Lines.LoadFromFile('pictures/Crysis.txt');
Image1.Picture.LoadFromFile('pictures/Crysis.jpg');
end;
if DataModule2.Table1Nazv.Value='Fallout: New Vegas' then begin
Memo1.Lines.LoadFromFile('pictures/Fallout New Vegas.txt');
Image1.Picture.LoadFromFile('pictures/Fallout New Vegas.jpg');
end;
if DataModule2.Table1Nazv.Value='Grand Theft Auto IV (GTA IV)' then begin
Memo1.Lines.LoadFromFile('pictures/Grand Theft Auto IV.txt');
Image1.Picture.LoadFromFile('pictures/Grand Theft Auto IV.jpg');
end;
if DataModule2.Table1Nazv.Value='Jagged Alliance: Снова в Деле' then begin
Memo1.Lines.LoadFromFile('pictures/Jagged Alliance.txt');
Image1.Picture.LoadFromFile('pictures/Jagged Alliance.jpg');
end;
if DataModule2.Table1Nazv.Value='Making History 2: Другая война' then begin
Memo1.Lines.LoadFromFile('pictures/Making History 2.txt');
Image1.Picture.LoadFromFile('pictures/Making History 2.jpg');
end;
if DataModule2.Table1Nazv.Value='Medal Of Honor' then begin
Memo1.Lines.LoadFromFile('pictures/Medal Of Honor.txt');
Image1.Picture.LoadFromFile('pictures/Medal Of Honor.jpg');
end;
if DataModule2.Table1Nazv.Value='S.T.A.L.K.E.R.: Зов Припяти' then begin
Memo1.Lines.LoadFromFile('pictures/S.T.A.L.K.E.R. Зов Припяти.txt');
Image1.Picture.LoadFromFile('pictures/S.T.A.L.K.E.R. Зов Припяти.jpg');
end;
if DataModule2.Table1Nazv.Value='Stronghold 3' then begin
Memo1.Lines.LoadFromFile('pictures/Stronghold 3.txt');
Image1.Picture.LoadFromFile('pictures/Stronghold 3.jpg');
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
RvProject1.Open;
RvProject1.Execute;
RvProject1.Close;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
end.