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

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

      AllProper.enabled:=true;

      AllInvert.enabled:=True;

      AllUpper.enabled:=True;

      AllLower.enabled:=True;

  end;

end;

procedure TPhoneBook.ListPopupPopup(Sender: TObject);

var ind:integer;

begin

  ind:=list.Selected.absoluteIndex;

  UpdateNotes;

  list.items[ind].Selected:=true;

  if Phonebook.list.selected.Index=0 then

     Phonebook.SetFirst.Enabled:=false;

end;

procedure TPhoneBook.N16Click(Sender: TObject);

begin

  list.fullexpand;

end;

procedure SortList;

var i:integer;

begin

with Phonebook do begin

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

         if (list.items[i].ImageIndex=1) or (list.items[i].ImageIndex=3) then begin

               list.items[i].MoveTo(list.items[i].Parent,naAddChildFirst)

         end;

    end;

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

         if (list.items[i].ImageIndex=1) then begin

               list.items[i].MoveTo(list.items[i].Parent,naAddChildFirst)

         end;

    end;

end;

end;

procedure TPhoneBook.SetFirstExecute(Sender: TObject);

begin

  list.selected.MoveTo(list.selected.Parent,naAddChildFirst)

end;

procedure TPhoneBook.N18Click(Sender: TObject);

begin

sortlist;

end;

procedure TPhoneBook.FocusListExecute(Sender: TObject);

begin

  if list.Focused then begin

    if files.enabled then begin

       files.SetFocus;

       files.SelStart:=0;

    end;

  end

  else list.SetFocus;

end;

procedure TPhoneBook.SelAllExecute(Sender: TObject);

begin

  if files.Focused then files.SelectAll;

end;

procedure TPhoneBook.N37Click(Sender: TObject);

begin

  list.fullcollapse;

  list.Items.GetFirstNode.Expand(false);

end;

procedure TPhoneBook.PrintNoteExecute(Sender: TObject);

var

  pd:TPrintdialog;

  Line: Integer;

  PrintText: TextFile;   {declares a file variable}

begin

  pd:=Tprintdialog.Create(Phonebook);

  if Pd.Execute then begin

    try

      AssignPrn(PrintText);   {assigns PrintText to the printer}

     Rewrite(PrintText);     {creates and opens the output file}

      Printer.Canvas.Font := Files.Font;  {assigns Font settings to the canvas}

      for Line := 0 to Files.Lines.Count - 1 do

        Writeln(PrintText, Files.Lines[Line]); {writes the contents of the Memo1 to the printer object}

      CloseFile(PrintText); {Closes the printer variable}

    except

      WriteLog(Log,'PrintError','PrintNoteExecute');

      showmessage('Ошибка печати');

    end;

  end;

end;

function ProperCase(ss:string):string;

var s  : string;

    fs : short;

begin

  s:=TrimLeft(ss);

  fs:=length(ss)-length(s);

  result:=stringofchar(' ',fs)+AnsiUpperCase(copy(s,1,1))+AnsiLowerCase(copy(s,2,length(s)));

end;

function invertCase(s:string):string;

var i     : integer;

    s1,s2 : string;

begin

   s1:='';

   s2:='';

   for i:=1 to length(s) do begin

       if AnsiCompareStr(AnsiUpperCase(s[i]),s[i])>0 then begin

          s1:=s[i];

          s2:=s2+AnsiUpperCase(s1);

       end

       else begin

          s1:=s[i];

          s2:=s2+AnsiLowerCase(s1);

       end;

   end;

   result:=s2;

end;

procedure TPhoneBook.filesKeyPress(Sender: TObject; var Key: Char);

   var

     line, scol,n,n2,x,y,n3: integer;

     ss1,ss2,s1,s2,s3: String;

   begin

     if key=#13 then begin

         key:=#0;

         n2:=files.selstart;

         line:=files.CaretPos.y;

         x:=files.CaretPos.x;

         s1:=files.lines[line];

         s2:=trimleft(s1);

         scol:=length(s1)-length(s2);

         s3:=system.copy(files.lines[line],1,x);

         s2:=system.copy(files.lines[line],x+1,length(files.lines[line])-x+1);

         s1:=trimright(s3);

         n3:=length(s3)-length(s1);

         s2:=trim(s2);

         files.lines[line]:=s1+#13#10+stringofchar(' ',scol)+s2;

         files.selstart:=n2+2+scol-n3;

      end;

      if key=chr(vk_tab) then begin

         n:=files.Selstart;

         key:=#0;

         y:=files.CaretPos.y;

         x:=files.CaretPos.x;

         ss1:=system.copy(files.lines[y],1,x);

         ss2:=system.copy(files.lines[y],x+1,length(files.lines[y])-x);

         files.lines[y]:=ss1+tab+ss2;

         files.Selstart:=n+length(tab);

      end;

end;

procedure TPhoneBook.filesClick(Sender: TObject);

begin

  StatusBar1.Panels[2].Text:=inttostr(files.CaretPos.x)+':'+inttostr(files.CaretPos.y+1);

end;

procedure TPhoneBook.filesKeyDown(Sender: TObject; var Key: Word;

  Shift: TShiftState);

begin

   StatusBar1.Panels[2].Text:=inttostr(files.CaretPos.x)+':'+inttostr(files.CaretPos.y+1);

end;

procedure TPhoneBook.SpeedButton1Click(Sender: TObject);

begin

end;

procedure TPhoneBook.PhonesKeyUp(Sender: TObject; var Key: Word;

  Shift: TShiftState);

begin

  case key of

    13: edit_Execute(nil);

    46: delete_Execute(nil);

    45: new_Execute(nil);

  end;

end;

procedure TPhoneBook.FormShow(Sender: TObject);

var i:integer;

begin

  if phonebook.WindowState=wsMaximized then begin

    for i:=0 to Phonebook.ComponentCount-1 do

      if Phonebook.Components[i] is TControl then

        (Phonebook.Components[i] as TControl).Visible:=false;

     phonebook.WindowState:=wsNormal;

     phonebook.WindowState:=wsMaximized;

     for i:=0 to Phonebook.ComponentCount-1 do

       if Phonebook.Components[i] is TControl then

         (Phonebook.Components[i] as TControl).Visible:=true;

  end;

  splitter1.Align:=alBottom;

end;

procedure TPhoneBook.CheckBox1Click(Sender: TObject);

begin

files.WordWrap:=checkbox1.Checked;

if files.WordWrap then

   files.ScrollBars:=ssVertical

else

   files.ScrollBars:=ssBoth;

n8.Checked:=checkbox1.Checked;

end;

procedure TPhoneBook.bgcolorClick(Sender: TObject);

begin

  if colorD.Execute then

     bgcolor.font.Color:=colorD.Color;

end;

procedure TPhoneBook.textcolorClick(Sender: TObject);

begin

  if colorD.Execute then

     textcolor.font.Color:=colorD.Color;

end;

procedure TPhoneBook.bordercolorClick(Sender: TObject);

begin

  if colorD.Execute then

     bordercolor.font.Color:=colorD.Color;

end;

procedure TPhoneBook.ExitOnEscExecute(Sender: TObject);

begin

  if checkbox5.Checked then close;

end;

procedure TPhoneBook.ToolButton16Click(Sender: TObject);

var i:integer;

begin

  for i:=0 to phones.Columns.Count-1 do

     phones.Column[i].width:=round(phones.Width/phones.Columns.Count)-1;

end;

procedure TPhoneBook.ListDragOver(Sender, Source: TObject; X, Y: Integer;

  State: TDragState; var Accept: Boolean);

begin

  if source is TTreeView then begin

     node:=(Source as TTreeView).Selected;

     ToNode:=(sender as TTreeView).GetNodeAt(x,y);

     if tonode<>nil then  begin

        if ((tonode.ImageIndex in [0,1,3])and(node.ImageIndex<>0)and(tonode<>node)) then

           accept:=true

        else accept:=false;

        if node.ImageIndex = 1 then StatusBar1.Panels[0].Text:=node.text+' -> '+tonode.Text;

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