Автор: Пользователь скрыл имя, 28 Февраля 2013 в 19:28, курсовая работа
В последнее время резко возрос интерес к программированию. Это связано с развитием и внедрением в повседневную жизнь информационно-коммуникационных технологий. Если человек имеет дело с компьютером, то рано или поздно у него возникает желание, а иногда и необходимость, программировать.
Среди пользователей персональных компьютеров в настоящее время наиболее популярно семейство операционных систем Windows и, естественно, что тот, кто собирается программировать, стремится писать программы, которые будут работать в этих системах.
ВВЕДЕНИЕ 3
ГЛАВА I. ХАРАКТЕРИСТИКА КОМПОНЕНТОВ.
ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС 4
1.1. Компоненты, использованные в базе данных «Каталог книг» 4
1.2. Характеристика компонентов ввода и отображения текстовой информации 4
1.3. Кнопки 6
1.4. Характеристика компонента Timer 8
1.5. Компоненты меню 9
1.6. Компоненты, обеспечивающие доступ к базе данных 11
1.7. Просмотр базы данных 15
1.8. Пользовательский интерфейс 21
ГЛАВА II. СОЗДАНИЕ БАЗЫ ДАННЫХ «КАТАЛОГ КНИГ» 22
2.1. База данных 22
2.2. Классификация баз данных 22
2.3. Структура базы данных 24
2.4. Модель базы данных в Delphi 25
2.5. Псевдоним базы данных 26
2.6. Создание базы данных «Каталог книг» 26
2.7. Создание каталога 27
2.8. Создание псевдонима 27
2.9. Создание таблицы 29
Глава III. СОЗДАНИЕ СПРАВОЧНО-ИНФОРМАЦИОННОЙ СИСТЕМЫ 36
ЗАКЛЮЧЕНИЕ 43
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 44
ПРИЛОЖЕНИЕ 45
var
Idx, Idx2: Integer;
TempComputer: TComputer;
TempIndex, TempIndex2: TIndex;
iPos, iPos2: Integer;
liTemp: TListItem;
begin
Idx:=lvMain.Selected.Index;
Idx2:=FileSize(ComputerFile)-
Seek(ComputerFile, Idx2);
Read(ComputerFile, TempComputer);
Seek(ComputerFile, Idx2);
Truncate(ComputerFile);
if Idx2 <> Idx then
begin
Seek(ComputerFile, Idx);
Write(ComputerFile, TempComputer);
end;
Seek(IndexFile, 0);
while not EOF(IndexFile) do
begin
Read(IndexFile, TempIndex);
if Idx2 <> Idx then
if TempIndex.Idx=Idx2 then
begin
TempIndex.Idx:=Idx;
Seek(IndexFile, FilePos(IndexFile)-1);
iPos:=FilePos(IndexFile);
Write(IndexFile, TempIndex);
end;
if TempIndex.Idx=Idx then
begin
iPos2:=FilePos(IndexFile)-1;
while not EOF(IndexFile) do
begin
Read(IndexFile, TempIndex2);
if Idx2 <> Idx then
if TempIndex2.Idx=Idx2 then
begin
iPos:=FilePos(IndexFile)-2;
TempIndex2.Idx:=Idx;
end;
Seek(IndexFile, FilePos(IndexFile)-2);
Write(IndexFile, TempIndex2);
Seek(IndexFile, FilePos(IndexFile)+1);
end;
Seek(IndexFile, FilePos(IndexFile)-1);
Truncate(IndexFile);
Break;
end;
end;
if Idx2 <> Idx then
begin
liTemp:=TListItem.Create(
liTemp.Assign(lvMain.Items[
lvMain.Items[lvMain.Items.
lvMain.Items[Idx].Assign(
liTemp.Free;
end
else
lvMain.Items[lvMain.Items.
fmIndexFile.lvMain.Items[
if Idx2 <> Idx then
fmIndexFile.lvMain.Items[iPos]
end;
procedure TfmMain.lvMainDblClick(Sender: TObject);
begin
if TListView(Sender).Selected <> nil then
actEditEntry.Execute;
end;
procedure TfmMain.actCreateExecute(
begin
Seek(ComputerFile, 0);
Seek(IndexFile, 0);
Truncate(ComputerFile);
Truncate(IndexFile);
lvMain.Clear;
fmIndexFile.lvMain.Clear;
end;
procedure TfmMain.actOpenExecute(Sender: TObject);
begin
if odMain.Execute then
begin
lvMain.Clear;
fmIndexFile.lvMain.Clear;
CloseFile(ComputerFile);
CloseFile(IndexFile);
OpenDBFile(odMain.FileName);
end;
end;
procedure TfmMain.actSearchExecute(
begin
fmSearch:=TfmSearch.Create(
try
fmSearch.ShowModal;
finally
fmSearch.Free;
end;
end;
end.