Телефонный справочник

Автор работы: Пользователь скрыл имя, 10 Января 2012 в 18:18, курсовая работа

Краткое описание

Программа «Телефонный справочник» была разработана для удобного хранения телефонных номеров, адресов и прочей информации на Вашем персональном компьютере. Программа имеет удобный и понятный интерфейс, систему быстрого поиска по имени, функцию хранения, ваших заметок. Вы можете легко распечатать нужную вам заметку.

В наше время появилось огромное количество номеров телефонов, адресов электронной почты и много другой различной информации, которое время от времени забывается или теряется. Поэтому, я решил создать программу, в которой вы можете хранить всю эту важную информацию не боясь что она потеряется, или вы ее забудете. Моя программа совмещает в себе несколько важных и нужных функций для хранения личной информации, это:

1)Заметки – Вы можете здесь записывать любую информацию, сохранять какие либо ссылки к важным веб узлам, и т п.

2) Телефонный справочник – Здесь Вы можете записывать все важные вам телефонные номера, контактные данные важных вам людей.

3) Систему технической поддержки

4) Мини браузер для работы в интернете.

Содержание работы

Введение …………………………………………….…………………………...3

Глава 1. Среда визуального программирования Delphi. ……..…………..…..4

1.2 Компоненты Borland Delphi 7 использованные при разработке PhoneBook……..…………………………………….…………………………….4

Глава 2. Описание программы PhoneBook………………..…………………....8

2.1 Вкладка «Настройки»………………………….………………..…………...9

2.2. Общие параметры……………………………...……………………………9

2.3. Параметры телефонной книги...…………………………………………….9

2.4 Параметры экспорта в Excel и HTML……………………………………..10

2.5 Параметры «Заметок»……………………………………………………….10

2.6 Опция «Перетаскивать по словам» ………………………………………..11

2.7 Техподдержка………………………………………………………………..11

2.8 Мини браузер………………………………………………………………..11

2.9 Время и дата…………………………………………………………………12

2.10 Вкладка «Телефонная книга»…..………………………………………...14

2.11 Сортировка контактов по группам……………………………………….14

2.12 Поиск контактов по имени………………………………………………..15

2.13 Экспорт контактов в Excel и HTML…..………………………………….15

2.13.1 Экспорт в Excel…..……………………………………………………....15

2.13.2 Экспорт в HTML….……………………………………………………...20

2.14 Добавление новой записив телефонный справочник……………………………………………………………………….21

2.15 Печать документа………………………………………………………….23

2.16 Сохранить как……………………………………………………………...24

2.17 Работа с буфером обмена….………………………………………………24

2.18 Обработка и исправление текста………………………………………….24

2.19 Заставка программы……………………………………………………….25

2.19.1Получение информации о пользователе и владельце ПК……………...25

2.19.2 Создание заставки программы…………………………………………..26

2.20 Ограничения программы…………………………………………………..27

2.20.1 «Демо» версия……………………………………………………………28

Глава 3. Требования по обеспечению пожарной безопасности……………………………………………………………………..31

3.1 Общие требования пожарной безопасности:……………………………..31

3.2 Правила поведения при пожаре:…………………………………………..32

3.3 Организация мероприятий при пожаре:…………………………………...33

3.4 Ответственность…………………………………………………………….34

Приложение1……..…………………………………………………………….36

Приложение 2…..………………………………………………………………65

Литература………………………………………………………………………66

Содержимое работы - 1 файл

ТРПП Курсовая.doc

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

   WriteLog(log,'NewGroupError','N1Click');

end;

end;

procedure TPhoneBook.FormActivate(Sender: TObject);

begin

  ComboBox1Change(self);

  groups.Items[0].selected:=true;

  if phones.Items.Count>0 then

    phones.Items[0].selected:=true;

  LoadGroupPhones(groups.Selected.Caption);

  groups.Update;

  PhonesColumnClick(phones,phones.Column[0]);

  phones.Update;

  phones.Realign;

  groups.Realign;

  files.Realign;

  List.Realign;

  asqn.Realign;

  PhoneList.Realign;

  status.Realign;

  comment.Realign;

//  splitter1.Align:=alBottom;

  if not _f then begin

    Groups.ItemIndex:=_II;

    _f:=true;

  end;

end;

procedure TPhoneBook.GroupsChange(Sender: TObject; Item: TListItem;

  Change: TItemChange);

begin

  Phones.OnChange:=Nil;

  if groups.Items.Count>0 then

     if (groups.ItemIndex>=0) and (groups.ItemIndex<groups.Items.Count) then

       LoadGroupPhones(groups.Selected.Caption);

  Phones.OnChange:=PhonesChange;

  if phones.Items.Count>0 then

    phones.Items[0].Selected:=true;

end;

procedure TPhoneBook.CheckBox2Click(Sender: TObject);

begin

  Groups.Visible:= CheckBox2.Checked;

end;

procedure TPhoneBook.CheckBox3Click(Sender: TObject);

begin

  comment.Visible:= CheckBox3.Checked;

  splitter1.align:=alNone;

  splitter1.top:=splitter1.top-50;

  splitter1.align:=alBottom;

end;

procedure TPhoneBook.FormClose(Sender: TObject; var Action: TCloseAction);

var i:integer;

begin

  for i:=0 to list.Items[0].Count-1 do begin

    if list.Items[0].item[i].text='*' then list.Items[0].Item[i].Delete;

  end;

  try

    FileSetAttr(dir+'text\notes.lst',$00);

    list.SaveToFile(dir+'text\notes.lst');

  except

     writelog(log,'FileWriteError(notes.lst)','FormClose');

  end;

  cfg.SaveCFG;

end;

procedure TPhoneBook.ComboBox1Change(Sender: TObject);

begin

Case combobox1.ItemIndex of

    0:PageControl1.TabPosition:=tpTop;

    1:PageControl1.TabPosition:=tpBottom;

    2:PageControl1.TabPosition:=tpRight;

    3:PageControl1.TabPosition:=tpLeft;

end;

end;

procedure TPhoneBook.RemoveExecute(Sender: TObject);

var s:string;

    cfgini:tinifile;

begin

cfgini:=tinifile.Create(dir+'PhoneBook.ini');

try

   if list.selected<>list.Items.GetFirstNode then begin

     if list.selected.ImageIndex =2 then s:='Действительно удалить заметку "'

        +AnsiUpperCase(list.selected.text)+'"?'

     else s:='Действительно удалить категорию "'+AnsiUpperCase(list.selected.text)+'"?';

     if messagedlg(s,mtConfirmation,[mbYes,mbNo],0)=mrYes then begin

       if list.selected.ImageIndex =2 then begin

          //deletefile(list.selected.text+'.txt')

           filesetattr(dir+'text\'+list.selected.text+'.txt',$00);

           deletefile(dir+'text\'+list.selected.text+'.txt');

       end

       else begin

         filesetattr(cfgini.FileName,$00);

         cfgini.deleteKey('Group',list.selected.text);

       end;

       list.Items.Delete(list.Selected);

     end;

   end;

except

   writelog(log,'FileReadError('+cfgini.filename+')','RemoveExecute');

end;

cfgini.Free;

updatenotes; //обновить параметры каталога

  updatenotesIcons; // и отображения

end;

procedure TPhoneBook.NewSubCategoryExecute(Sender: TObject);

begin

  Application.CreateForm(TForm2, Form2);

  form2.showmodal;

  UpdateNotesIcons;

  UpdateNotes;

  form2.free;

end;

procedure TPhonebook.NewTextExecute(Sender: TObject);

begin

  Application.CreateForm(TForm3, Form3);

  form3.showmodal;

  form3.Free;

  updateNotesIcons;

  UpdateNotes;

end; 

procedure TPhonebook.ListChange(Sender: TObject; Node: TTreeNode);

begin

  UpdateNotes;

end;

procedure TPhoneBook.FontcfgExecute(Sender: TObject);

var fs:string;

    cfgini:tinifile;

begin

cfgini:=tinifile.Create(dir+'PhoneBook.ini');

  try

   fs:='0000';//начальные  параметры стиля

   fontdialog1.Font := files.font;

   if fontdialog1.Execute then begin

     files.Font:=fontdialog1.Font;

     //запомним и установим  выбранные параметры

     filesetattr(cfgini.FileName,$00);

     cfgini.WriteInteger('Notes','FontSize',files.Font.size);

     cfgini.WriteString('Notes','FontFace',files.Font.Name);

     // закодируем и сохраним стиль шрифта

     if fsBold in files.font.Style then fs[1]:='1';

     if fsItalic in files.font.Style then fs[2]:='1';

     if fsUnderline in files.font.Style then fs[3]:='1';

     if fsStrikeOut in files.font.Style then fs[4]:='1';

     cfgini.WriteString('Notes','FontStyle', fs);

   end;

except

    writelog(log,'FileWriteError('+cfgini.FileName+')','RemoveExecute');

  end;

cfgini.Free;

end;

procedure TPhoneBook.FilesChange(Sender: TObject);

var cr_lf:integer;

begin

//только  если это заметка

  if list.selected.imageindex=2 then begin

     try

       fileSetAttr(includeTrailingBackslash(dir)+'text\'+list.selected.text+'.txt',$00);

       files.Lines.savetofile(includeTrailingBackslash(dir)+'text\'+list.selected.text+'.txt');

     except

       writelog(log,'FileWriteError('+list.selected.text+'.txt)','FilesChange');

     end;

  end;

  cr_lf:=files.Lines.count*2;

  statusbar1.Panels[3].text:='Символов:'+inttostr(length(files.lines.text)-cr_lf);

end;

procedure TPhoneBook.ChgPropExecute(Sender: TObject);

begin

  Application.CreateForm(TForm4, Form4);

  if list.Selected<>list.items.GetFirstNode then form4.showmodal;

  form4.free;

  UpdateNotes;

end; 

procedure UpdateNotesIcons;

var i:integer;

    cfgini:tinifile;

begin

cfgini:=tinifile.Create(dir+'PhoneBook.ini');

try

   with PhoneBook do begin

     FOR I:=1 TO LIST.ITEMS.COUNT-1 DO BEGIN

       if cfgini.ValueExists('Group',List.Items[i].Text) then begin

          if list.items[i].count>0 then begin

             List.Items[i].ImageIndex:=1;

             List.Items[i].SelectedIndex:=1;

          end

          else begin

             List.Items[i].ImageIndex:=3;

             List.Items[i].SelectedIndex:=3;

          end;

       end

       else begin

          list.items[i].ImageIndex:=2;

          list.items[i].SelectedIndex:=2;

       end;

    END;

    list.Refresh;

end;

except

   writelog(log,'FileReadError(PhoneBook.ini)','UpdateItemsIcons');

  end;

cfgini.Free;

end;

procedure UpdateNotes;

var fll:tstringlist;//список строк заметки для загрузки

    cntfiles,i:integer;

begin

  for i:=0 to phonebook.list.Items[0].Count-1 do begin

    if (phonebook.list.Items[0].item[i].text='*')and(phonebook.list.Items[0].item[i].Count<1) then

       phonebook.list.Items[0].Item[i].Delete;

  end; 

  if PhoneBook.list.selected=nil then

     PhoneBook.list.items[0].Selected:=true;

  PhoneBook.statusbar1.panels[2].text:='';

  PhoneBook.statusbar1.panels[3].text:='';

  PhoneBook.files.Clear;

Информация о работе Телефонный справочник