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

Автор работы: Пользователь скрыл имя, 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 Кб (Скачать файл)

  cfg.loadCFG;

  PhoneBook.PageControl1.Update;

  UpdateNotesIcons; 

  groups.OnChange:=GroupsChange;

  Phones.OnChange:=PhonesChange;

end;

procedure TPhoneBook.N2Click(Sender: TObject);

var i:integer;

    glist:tstringlist;

begin

if groups.ItemFocused.Caption<>'<Весь список>' then

  if messagedlg('Вы действительно хотите удалить группу "'+groups.ItemFocused.Caption+'"',mtConfirmation,[mbNo,mbYes],0)=mrYes then begin

     groups.ItemFocused.Delete;

     glist:=tstringlist.create;

     glist.Clear;

      for i:=1 to groups.Items.Count-1 do begin

        glist.add(groups.Items[i].Caption);

     end;

try

       filesetattr(dir+'groups.pdb',$00);

       glist.SaveToFile(dir+'groups.pdb');

     except

       //запись лога при ошибке

       writelog(log,'FileWriteError(Groups.pdb)','N2Click');

     end;

     glist.Free;

  end;

end;

procedure TPhoneBook.N2Click(Sender: TObject);

var i:integer;

    glist:tstringlist;

begin

if groups.ItemFocused.Caption<>'<Весь список>' then

  if messagedlg('Вы действительно хотите удалить группу "'+groups.ItemFocused.Caption+'"',mtConfirmation,[mbNo,mbYes],0)=mrYes then begin

     groups.ItemFocused.Delete;

     glist:=tstringlist.create;

     glist.Clear;

     for i:=1 to groups.Items.Count-1 do begin

        glist.add(groups.Items[i].Caption);

     end; 

     try

       filesetattr(dir+'groups.pdb',$00);

       glist.SaveToFile(dir+'groups.pdb');

     except

       //запись лога при ошибке

       writelog(log,'FileWriteError(Groups.pdb)','N2Click');

     end;

     glist.Free;

  end;

end;

procedure LoadGroupPhones(Const Groupname:string);

var i,cur:integer;

     sec:tstringlist;

begin

phonebook.phones.OnChange:=nil;

sec:=tstringlist.Create;

with phonebook do begin

   phones.Clear;

   try

     ini.ReadSections(sec);

     status.panels[1].text:=' число записей: '+inttostr(sec.Count);

     if groups.ItemIndex=0 then begin

        for i:=0 to sec.Count-1 do begin

          Phones.Items.Add.Caption:=Sec[i];

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n1',''));

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n2',''));

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n3',''));

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n4',''));

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n6',''));

          Phones.Items[i].SubItems.Add(Ini.ReadString(Sec[i],'n5',''));

        end;

      end;

      if groups.itemindex>0 then begin

        for i:=0 to  sec.Count-1 do begin

          if ini.readstring(sec[i],'n7','')=GroupName then begin

              cur:=phones.Items.Add.Index;

              phones.items[cur].Caption:=sec[i];

              phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n1',''));

              phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n2',''));

             phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n3',''));

              phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n4',''));

              phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n6',''));

              phones.items[cur].SubItems.Add(ini.readstring(sec[i],'n5',''));

          end;

        end;

      end;

    except

      writelog(log,'FileReadError('+ini.filename+')','LoadAllPhones');

    end;

  end;

  phonebook.phones.OnChange:=PhoneBook.PhonesChange;

end;

procedure LoadPhones;

var i:integer;

     sec:tstringlist;

begin

  phonebook.phones.OnChange:=nil;

  sec:=tstringlist.Create;

  with phonebook do begin

    phones.Items.Clear;

    try

      ini.ReadSections(sec);

      status.panels[1].text:=' число записей: '+inttostr(sec.Count);

      for i:=0 to sec.Count-1 do begin

        phones.Items.Add;

        phones.items[i].Caption:=sec[i];

        phones.items[i].SubItems.Add(ini.readstring(sec[i],'n1',''));

        phones.items[i].SubItems.Add(ini.readstring(sec[i],'n2',''));

         phones.items[i].SubItems.Add(ini.readstring(sec[i],'n3',''));

        phones.items[i].SubItems.Add(ini.readstring(sec[i],'n4',''));

        phones.items[i].SubItems.Add(ini.readstring(sec[i],'n6',''));

        phones.items[i].SubItems.Add(ini.readstring(sec[i],'n5',''));

      end;

    except

      writelog(log,'FileReadError('+ini.filename+')','LoadPhones');

    end;

  end;

  phonebook.phones.OnChange:=PhoneBook.PhonesChange;

end;

procedure TPhoneBook.PhonesChange(Sender: TObject; Item: TListItem;Change: TItemChange);

var i:integer;

begin

  comment.Clear;

  for i:=0 to 100 do begin

    try

      if ini.readstring(item.Caption,'c'+inttostr(i),'@')<>'@' then

         comment.lines.Add(ini.readstring(item.Caption,'c'+inttostr(i),''));

      except

         writelog(log,'FileReadError('+ini.filename+')','PhonesChange');

      end;

  end;

  comment.SelStart:=0;

  comment.Sellength:=0;

  comment.Update;

  CommentChanged:=false;

end;

procedure TPhoneBook.edit_Execute(Sender: TObject);

begin

if (phones.Focused)and(phones.selected<>nil) then begin

   Application.CreateForm(TChangePhone, ChangePhone);

   if changePhone.showmodal=mrOk then begin

     LoadGroupPhones(groups.Selected.Caption);

   end;

   ChangePhone.Free;

end;

end;

Procedure TPhoneBook.delete_Execute(Sender: TObject);

var attr:integer;

begin

if phones.Focused then

  if messagedlg('Вы действительно хотите удалить "'+phones.ItemFocused.Caption+'"'

              ,mtConfirmation,[mbNo,mbYes],0)=mrYes then begin

   try

     attr:=filegetattr(ini.FileName);

     filesetattr(ini.FileName,$00);

     ini.EraseSection(phones.ItemFocused.Caption);

     filesetattr(ini.FileName,attr);

     //LoadAllPhones(groups.Selected.Caption);

     phones.ItemFocused.Delete;

   except

       writelog(log,'FileWriteError('+ini.filename+')','delete_execute');

   end;

procedure TPhoneBook.PhonesDblClick(Sender: TObject);

begin

  if phones.ItemFocused<>nil then edit_.Execute;

end;

procedure TPhoneBook.new_Execute(Sender: TObject);

begin

  Application.CreateForm(TNewPhone, NewPhone);

  if NewPhone.ShowModal=mrOk then

     if groups.itemIndex>0 then

        LoadGroupPhones(groups.items[groups.itemIndex].Caption)

     else

        LoadGroupPhones(groups.items[0].Caption);

  NewPhone.free;

end;

procedure TPhoneBook.N1Click(Sender: TObject);

  var newstr:string;

      i:integer;

      glist:tstringlist;

begin

try

  NewStr:=InputBox('Новая группа телефонов','Введите имя группы','');

  if newstr<>'' then begin

     groups.Items.add.Caption:=newstr;

     glist:=tstringlist.create;

     glist.Clear;

     for i:=1 to groups.Items.Count-1 do begin

        Glist.add(groups.Items[i].Caption);

     end;

     try

       FileSetAttr(dir+'groups.pdb',$00);

       Glist.SaveToFile(dir+'groups.pdb');

       Glist.Free;

     except

       WriteLog(log,'FileWriteError(Groups.pdb)','N1Click');

     end;

  end;

except

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