Разработка блокнота в среде Delphi 7

Разработка программного продукта Блокнот в среде Delphi версии 7, позволяющего создавать и редактировать текстовые файлы различных форматов (txt, rtf и др.). Функции программы; использование глобальных переменных типа string, integer для хранения данных.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 06.03.2013
Размер файла 1,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

1

Размещено на http://www.allbest.ru/

Кыргызско-российский славянский униветситет

Естественно-технический факультет

Кафедра информационных и вычислительных технологий

Курсовая работа

По дисциплине: «Алгоритмические языки программирования»

Тема:

Разработка блокнота в среде Delphi 7

Выполнила: Миронова Е.Н.

Проверил: Десятков Г.А.

Бишкек 2013

Оглавление

  • Введение
  • Описание программы
  • Постановка задачи
  • Руководство пользователя
  • Руководство программиста
  • Блок схема
  • Заключение
  • Список литературы
  • Приложение
    • Листинг программы

Введение

Внедрение электронно-вычислительных машин, современных средств переработки и передачи информации послужило началом нового процесса, называемым информатизацией общества. Широкое распространение получил научно-технический прогресс. В настоящее время одним из направлений научно-технического прогресса является компьютеризация практически всех сфер человеческой деятельности. Сейчас компьютер является неотъемлемой частью работы людей. Компьютеры используются в школах и университетах. Они помогают систематизации полученные данных как в рабочих целях, так и в учебных.

В данном курсовом проекте рассмотрен программный продукт “Методика многофакторного исследования личности Р. Кеттелла”. Он представляет собой опросник из 187 вопросов, определяющий шестнадцать факторов личности и дает многогранную информацию о личностных чертах, которые называют конституционными факторами, предложен Р. Кеттеллом.

Описание программы

Программа Блокнот разработана в среде Delphi версии 7.

Для хранения данных в программе используются глобальные переменные типа string, integer.

Предусмотрен вывод сообщений с помощью функции MessageDlg.

Постановка задачи

Создать программный продукт позволяющий создавать и редактировать текстовые файлы различных форматов (txt, rtf и т.д.) который будет обладать следующими функциями:

· Одновременная работа с несколькими документами;

· Сохранение результатов работы в различных форматах;

· Печать документов;

· Широкий инструментарий для редактирования текста;

Входные и выходные данные

· Текстовый файл;

Минимальные технические требования и ОС:

Персональный компьютер

Процессор 200 Mhz

Оперативная память 32 MB

Место на диске MB

Клавиатура

Манипулятор (мышь)

Руководство пользователя

Данная программа предназначена для работы с текстом

Для начала работы нужно запустить исполнимый файл bloknot.exe.

Рис.1. Блокнот

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

Рис. 2

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

Рис. 3

В разделе меню Вид можно изменить шрифт.

Рис. 4

Рис. 5

В разделе Помощь указан разработчик

Рис. 6

Рис. 7

Так же все выше описанные функции имеются на панеле быстрого доступа.

Рис. 8

Руководство программиста

Данная программа осуществляет различные процессы: введение, редактирование и сохранение текста. При использовании компонентов Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Menus, Buttons, ComCtrls, XPMan. У всех данных компонентов осуществлена взаимосвязь, так как при общем их сочетании мы получаем желательный результат. Без этих компонентом работа данной программы не осуществляется.

Программа состоит из процедур. Каждая процедура соответствует одной форме. Процедура начинает работать по вызову его пользователем щелчком мыши по соответствующему объекту.

В программе использованы различные свойства компонентов: видимость (visible), заголовок (caption).

Рассмотрим некоторые использованные процедуры:

С помощью процедуры New1Click мы создаем новый текстовый документ с расширением *.txt.

С помощью процедуры Open1Click вы можете открыть имеющийся файл.

С помощью процедуры Save1Click вы можете сохранить созданный или отредактированный вами файл.

С помощью процедуры Print1Click производится отправка файла на печать.

С помощью процедуры Cut1Click вы можете вырезать выделенный текст.

С помощью процедуры Copy1Click производится копирование выделенного текста.

С помощью процедуры Paste1Clikc производится вставка ранее скопированного текста.

С помощью процедуры Find1Click производится поиск слова в тексте.

С помощью процедуры SaveAs1Click производится сохранение файла в выбранную вами директорию с выбранным расширением.

С помощью процедуры N6Click выводится сообщение о создателе данного текстового редактора.

Блок схема

Размещено на http://www.allbest.ru/

1

Размещено на http://www.allbest.ru/

блокнот delphi string integer

Заключение

Данная программа является типичным примером реализации простейших программ созданных для Windows с помощью Delphi.

Достоинством данной программы является ее простота в использовании в наиболее распространенной, на данный момент, операционной системе Windows и то, что при необходимости можно добавить нужные кнопки-функции.

Список литературы

1. Н.Б. Культин - Основы программирования в Delphi 7 - 2007

2. www.delphi-manual.ru

3. Учебник по Delphi 7 для начинающих

4. Иллюстрированный самоучитель по Delphi 7 для начинаюших

5. Иллюстрированный самоучитель по Delphi 7 для профессионалов

6. Учебник для продвинутых по Delphi 7

Приложение

Листинг программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ComCtrls, XPMan, ToolWin, Menus, StdCtrls, ImgList,Printers;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

File1: TMenuItem;

Exit1: TMenuItem;

N1: TMenuItem;

PrintSetup1: TMenuItem;

Print1: TMenuItem;

N2: TMenuItem;

SaveAs1: TMenuItem;

Save1: TMenuItem;

Open1: TMenuItem;

New1: TMenuItem;

Edit1: TMenuItem;

Find1: TMenuItem;

N4: TMenuItem;

Paste1: TMenuItem;

Copy1: TMenuItem;

Cut1: TMenuItem;

N5: TMenuItem;

Undo1: TMenuItem;

View1: TMenuItem;

Font1: TMenuItem;

Help1: TMenuItem;

About1: TMenuItem;

ToolBar1: TToolBar;

XPManifest1: TXPManifest;

ToolButton1: TToolButton;

ToolButton3: TToolButton;

ToolButton5: TToolButton;

ToolButton7: TToolButton;

ToolButton8: TToolButton;

ToolButton2: TToolButton;

ToolButton4: TToolButton;

ToolButton6: TToolButton;

ToolButton9: TToolButton;

ToolButton10: TToolButton;

ToolButton11: TToolButton;

ImageList1: TImageList;

OpenDialog1: TOpenDialog;

SaveDialog1: TSaveDialog;

Memo1: TMemo;

FontDialog1: TFontDialog;

FindDialog1: TFindDialog;

PrinterSetupDialog1: TPrinterSetupDialog;

ReplaceDialog1: TReplaceDialog;

N3: TMenuItem;

FindDialog2: TFindDialog;

procedure Exit1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure New1Click(Sender: TObject);

procedure Open1Click(Sender: TObject);

procedure Save1Click(Sender: TObject);

procedure Print1Click(Sender: TObject);

procedure PrintSetup1Click(Sender: TObject);

procedure Undo1Click(Sender: TObject);

procedure Cut1Click(Sender: TObject);

procedure Copy1Click(Sender: TObject);

procedure Paste1Click(Sender: TObject);

procedure Font1Click(Sender: TObject);

procedure About1Click(Sender: TObject);

procedure FindDialog1Find(Sender: TObject);

procedure Find1Click(Sender: TObject);

procedure SaveAs1Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure ReplaceDialog1Replace(Sender: TObject);

procedure FindDialog2Find(Sender: TObject);

procedure Memo1DblClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

FFileName:string;

PrgName:string;

FSelPos: integer;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Exit1Click(Sender: TObject);

begin

close;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

Caption:='Блокнот';

PrgName:=Caption;

end;

procedure TForm1.New1Click(Sender: TObject);

begin

Memo1.Lines.Clear;

FFileName:='Новый Текстовый документ.txt';

Caption:=PrgName +' - '+FFileName;

end;

procedure TForm1.Open1Click(Sender: TObject);

begin

if OpenDialog1.Execute then

begin

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

FFileName:=OpenDialog1.FileName;

Caption:=PrgName+' - '+ FFileName;

end;

end;

procedure TForm1.Save1Click(Sender: TObject);

begin

Memo1.Lines.SaveToFile(FFileName);

end;

procedure TForm1.Print1Click(Sender: TObject);

var Line: Integer;

PrintText: System.Text;

begin

AssignPrn(PrintText);

Rewrite(PrintText);

Printer.Canvas.Font := Memo1.Font;

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

Writeln(PrintText, Memo1.Lines[Line]);

System.Close(PrintText);

end;

procedure TForm1.PrintSetup1Click(Sender: TObject);

begin

PrinterSetupDialog1.Execute;

end;

procedure TForm1.Undo1Click(Sender: TObject);

begin

Memo1.Undo;

end;

procedure TForm1.Cut1Click(Sender: TObject);

begin

Memo1.CutToClipboard;

end;

procedure TForm1.Copy1Click(Sender: TObject);

begin

Memo1.CopyToClipboard;

end;

procedure TForm1.Paste1Click(Sender: TObject);

begin

Memo1.PasteFromClipboard;

end;

procedure TForm1.Font1Click(Sender: TObject);

begin

if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font;

end;

procedure TForm1.About1Click(Sender: TObject);

begin

Form2.Visible:=true;

Form2.Caption:='О программе';

Form2.Label1.Caption:='Программа Блокнот';

end;

procedure TForm1.FindDialog1Find(Sender: TObject);

var

S : string;

startpos : integer;

begin

with TFindDialog(Sender) do

begin

{If the stored position is 0 this cannot be a find next. }

if FSelPos = 0 then

Options := Options - [frFindNext];

{ Figure out where to start the search and get the corresponding

text from the memo. }

if frfindNext in Options then

begin

{ This is a find next, start after the end of the last found word. }

StartPos := FSelPos + Length(Findtext);

S := Copy(Memo1.Lines.Text, StartPos, MaxInt);

end

else

begin

{ This is a find first, start at the, well, start. }

S := Memo1.Lines.Text;

StartPos := 1;

end;

{ Perform a global case-sensitive search for FindText in S }

FSelPos := Pos(FindText, S);

if FSelPos > 0 then

begin

{ Found something, correct position for the location of the start

of search. }

FSelPos := FSelPos + StartPos - 1;

Memo1.SelStart := FSelPos - 1;

Memo1.SelLength := Length(FindText);

Memo1.SetFocus;

end

else

begin

{ No joy, show a message. }

if frfindNext in Options then

S := Concat('Не удается найти "', FindText,

'" в тексте.')

else

S := Concat('Запрашиваемое слово не наидено "', FindText, '" в тексте.');

MessageDlg(S, mtError, [mbOK], 0);

end;

end;

end;

procedure TForm1.Find1Click(Sender: TObject);

begin

FSelPos := 0;

FindDialog1.Execute;

end;

procedure TForm1.SaveAs1Click(Sender: TObject);

begin

if SaveDialog1. Execute then

begin

memo1.Lines.savetofile(savedialog1.FileName+

'.txt');caption:=savedialog1.filename;

end;

end;

procedure TForm1.N3Click(Sender: TObject);

begin

ReplaceDialog1.Execute;

end;

procedure TForm1.ReplaceDialog1Replace(Sender: TObject);

begin

with Sender as TReplaceDialog do

while True do

begin

if Memo1.SelText <> FindText then

FindDialog2Find(Sender);

if Memo1.SelLength = 0 then

Break;

Memo1.SelText := ReplaceText;

if not (frReplaceAll in Options) then

Break;

end;

end;

procedure TForm1.FindDialog2Find(Sender: TObject);

var

Buff, P, FT: PChar;

BuffLen: Word;

begin

with Sender as TFindDialog do

begin

GetMem(FT, Length(FindText) + 1);

StrPCopy(FT, FindText);

BuffLen := Memo1.GetTextLen + 1;

GetMem(Buff, BuffLen);

Memo1.GetTextBuf(Buff, BuffLen);

P := Buff + Memo1.SelStart + Memo1.SelLength;

P := StrPos(P, FT);

if P = nil then

MessageBeep(0)

else

begin

Memo1.SelStart := P - Buff;

Memo1.SelLength := Length(FindText);

end;

FreeMem(FT, Length(FindText) + 1);

FreeMem(Buff, BuffLen);

end;

end;

procedure TForm1.Memo1DblClick(Sender: TObject);

var

Line: Integer;

begin

with (Sender as TMemo) do

begin

Line := Perform(EM_LINEFROMCHAR, SelStart, 0);

SelStart := Perform(EM_LINEINDEX, Line, 0);

SelLength := Length(Lines[Line]);

end;

end;

end.

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.