База данных DVD–фильмов
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
е! Мой проект закончен. Есть две причины, для чего я делал это. Первая, что бы сдать его Вам Александр Григорьевич! Вторая, для получения знаний по операционным системам и самому программированию в целом и что бы, не было скучно. Ну а теперь о главном. Я думаю, цель, поставленная передо мной, выполнена. Я немного стал разбираться в Delphi. Научился работать с процедурами, с записями и с циклами. Также создал простую, а главное удобную программу, которая может пригодиться любому коллекционеру фильмов на DVD дисках. Очень простой интерфейс позволяет работать в программе даже ребенку, и старшему поколению, которому очень трудно обращаться с новыми технологиями, в том числе и компьютерами. А в завершении хотелось бы сказать большое спасибо разработчикам Delphi. Ведь без этой среды разработки у меня ни чего бы, не вышло. Всем спасибо за помощь. До свидания!!!
Список литературы
1. Михаил Фленов, Библия Delphi, Санкт Петербург БХВ- Петербург 2004 год, 882 стр.
2. Владимир Гофман, Анатолий Хамоненко, Delphi быстрый старт, Санкт Петербург БХВ-Петербург 2003 год, 280 стр.
3. Евгений Марков, Петр Дарахвелидзе, Программирование в Delphi 7, Санкт Петербург БХВ-Петербург 2003 год, 780 стр.
4. Поган А.М., Царенко Ю.А., “Программирование в Delphi”, Москва ЭКСМО 2006 год, 309 стр.
5. Бобровский А. , “Delphi 5. Учебный курс.” , Санкт Петербург, Москва, Харьков, Минск, ЗАО Питербук , 2004 год, 639 стр.
Приложение 1
Листинг программы и её модулей
program Kursovik;
uses
Forms,
kurs in kurs.pas {Form1},
Unit2 in Unit2.pas {Form2},
Input in Input.pas {Form3},
search in search.pas {Form4};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
Application.Run;
end.
Модуль kurs.pas
unit kursovik;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus, jpeg, ExtCtrls, Grids, DBGrids, ShellAPI, XPMan;
const
derect=savedvd\;
type disk=record
name:string[50];
stoim:integer;
year:integer;
reg:string[30];
cincom:string[30];
end;
tdvd=array[1..300] of disk;
recordfile=file of disk;
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N21: TMenuItem;
StringGrid1: TStringGrid;
ComboBox3: TComboBox;
Edit9: TEdit;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
reg1: TMenuItem;
cincom1: TMenuItem;
N13: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
XPManifest1: TXPManifest;
N26: TMenuItem;
Label8: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
N25: TMenuItem;
procedure N8Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
Procedure deletef(horizon:integer);
procedure editzap;
procedure clearlist;
procedure vivod (dvdfile:string);
procedure sort_1(dvdfile:string);
procedure sort_2(dvdfile: string);
procedure sort_3(dvdfile: string);
procedure sort_4(dvdfile: string);
procedure sort_5(dvdfile: string);
procedure N7Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure reg1Click(Sender: TObject);
procedure cincom1Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
procedure N26Click(Sender: TObject);
procedure Edit9Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
public
n,m,k:integer;
f,g:recordfile;
but:integer;
h:HWND;
horizon : integer;
end;
var
Form1: TForm1;
implementation
uses unit2, Input, search;
{$R *.dfm}
procedure tform1.clearlist;
begin
n:=0;
while n<stringgrid1.rowcount do
begin
StringGrid1.Cells[0,n+1]:=;
StringGrid1.Cells[1,n+1]:=;
StringGrid1.Cells[2,n+1]:=;
StringGrid1.Cells[3,n+1]:=;
StringGrid1.Cells[4,n+1]:=;
StringGrid1.Cells[5,n+1]:=;
n:=n+1;
end;
stringgrid1.RowCount:=2;
end;
procedure tform1.vivod (dvdfile:string);
var s:disk;
count:integer;
f1:recordfile;
begin
assignfile(f,dvdfile);{$I-}
reset(f); {$I+}
N:=0;
count:=0;
If IOResult=0 then
begin
while not eof(f) do
begin
count:=count+1;
read(f,s);
StringGrid1.cols[0][N+1]:=inttostr(count);
StringGrid1.Cells[1,N+1]:=s.name;
StringGrid1.Cells[2,N+1]:=inttostr(s.stoim)+ руб.;
StringGrid1.Cells[3,N+1]:=intToStr(s.year)+ год;
StringGrid1.Cells[4,N+1]:=s.reg;
StringGrid1.Cells[5,N+1]:=s.cincom;
N:=N+1;
end;
seek(f,0);
closefile(f);
if count=0 then
clearlist
else
stringgrid1.rowcount:=N+1;
end
else
begin
createdir(savedvd\);
assignfile(f1,derect+db_ disk.db);
rewrite(f1);
closefile(f1);
end;
end;
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
horizon:=ARow;
end;
{Удаление записи}
Procedure tform1.deletef(horizon:integer);
var
f1:recordfile;
el:tdvd;
begin
but:=MessageBox(0,Удалить данные?,Внимание!,MB_YESNO or MB_ICONquestion);
if but=IDYES then
begin
assignfile(f1,derect+new.db);
rewrite(f1);
assignfile(f,derect+db_ disk.db);
reset(f);
n:=1;
while not eof(f) do
begin
read(f,el[n]);
if n <> horizon then
write(f1,el[n]);
n:=n+1;
end;
closefile(f);
closefile(f1);
erase(f);
rename(f1,derect+db_ disk.db);
vivod(derect+db_disk.db);
end;
end;
procedure tform1.sort_1(dvdfile: string);
var
f,q:file of disk;
c,i,n:integer;
buf:disk;
el:tdvd;
begin
assignfile(q,derect+db.db);
rewrite(q);
assignfile(f,dvdfile);
reset(f);
c:=0;
while not eof(f)do
begin
c:=c+1;
read(f