Разработка алгоритма программного обеспечения в Delphi 7 для текстового редактора

Автор работы: Пользователь скрыл имя, 27 Ноября 2011 в 17:53, курсовая работа

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

Данное программное приложение будет обеспечивать работу сразу с несколькими текстовыми файлами. В приложении можно будет выполнять работы по редактированию текста.
Во время работы программы пользователь, выполнив требования, изложенные в РУКОВОДСТВЕ ОПЕРАТОРА, может использовать программу.

Содержание

Введение
1 Техническое задание на разработку программного комплекса
2 Описание постановки задачи, теоретическое обоснование поставленной задачи
3 Руководство программиста
4 Руководство оператора
5.Описание контрольного примера.
6 Блок-схема
7 Текст программы с комментариями

Прикрепленные файлы: 1 файл

пояснительная записка 2-хт-5.doc

— 1.10 Мб (Скачать документ)

interface 

uses

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

  Dialogs, Menus, StdActns, ActnList, ExtCtrls, DBActns; 

type

  TForm1 = class(TForm)

    MainMenu1: TMainMenu;

    File1: TMenuItem;

    New1: TMenuItem;

    Open1: TMenuItem;

    Save1: TMenuItem;

    SaveAs1: TMenuItem;

    N6: TMenuItem;

    Exit1: TMenuItem;

    Edit1: TMenuItem;

    Cut1: TMenuItem;

    Copy1: TMenuItem;

    Paste1: TMenuItem;

    Delete1: TMenuItem;

    N2: TMenuItem;

    SelAll1: TMenuItem;

    Find1: TMenuItem;

    N3: TMenuItem;

    FindNext1: TMenuItem;

    Replace1: TMenuItem;

    WindowMenu: TMenuItem;

    OpenDialog1: TOpenDialog;

    ActionList1: TActionList;

    Action1: TAction;

    WindowClose1: TWindowClose;

    WindowCascade1: TWindowCascade;

    WindowTileHorizontal1: TWindowTileHorizontal;

    WindowTileVertical1: TWindowTileVertical;

    WindowMinimizeAll1: TWindowMinimizeAll;

    WindowArrange1: TWindowArrange;

    N1: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N7: TMenuItem;

    N8: TMenuItem;

    N9: TMenuItem;

    EditCut1: TEditCut;

    EditCopy1: TEditCopy;

    EditPaste1: TEditPaste;

    EditSelectAll1: TEditSelectAll;

    EditUndo1: TEditUndo;

    EditDelete1: TEditDelete;

    SaveDialog1: TSaveDialog;

    FindDialog1: TFindDialog;

    ReplaceDialog1: TReplaceDialog;

    Action2: TAction;

    SearchFind1: TSearchFind;

    SearchFindNext1: TSearchFindNext;

    SearchReplace1: TSearchReplace;

    SearchFindFirst1: TSearchFindFirst;

    Action3: TAction;

    DataSetFirst1: TDataSetFirst;

    procedure New1Click(Sender: TObject);

    procedure Open1Click(Sender: TObject);

    procedure SaveAs1Click(Sender: TObject);

    procedure Save1Click(Sender: TObject);

    procedure Exit1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form1: TForm1; 

implementation 

uses MainForm; 

{$R *.dfm} 

procedure TForm1.New1Click(Sender: TObject);

begin

TChildForm.Create(Self);

end; 

procedure   TForm1.Open1Click(Sender: TObject);

begin

  if OpenDialog1.Execute then // если файл выбран, то выполнять следующее

begin

ChildForm := TChildForm.Create(Self); // создать дочернее окно

ChildForm.Memo1.Lines.LoadFromFile(OpenDialog1.FileName); // загрузить в Memo1 выбранный файл

ChildForm.Caption := OpenDialog1.FileName; // установить заголовок дочернего окна в название файла

  ChildForm.Memo1.Tag:=0; // добавить

end;

end; 

procedure   TForm1.SaveAs1Click(Sender: TObject);

begin

  if MDIChildCount=0 then Exit; //если нет MDI дочерних окон, то выйти из процедуры

SaveDialog1.Title:='Сохранить файл как...'; // заголовок диалогового окна сохранения файла

if SaveDialog1.Execute then // если пользователь выбрал название файла

begin

(ActiveMDIChild as TChildForm).Memo1.Lines.SaveToFile(SaveDialog1.FileName); // сохранение

(ActiveMDIChild as TChildForm).Caption:=SaveDialog1.FileName; // заголовок окна

  (ActiveMDIChild as TChildForm).Memo1.Tag:=0; // добавить

end;

end; 
 

procedure   TForm1.Save1Click(Sender: TObject);

begin

  if MDIChildCount=0 then Exit; //если нет MDI дочерних окон, то выйти из процедуры

if (ActiveMDIChild as TChildForm).Caption='НОВЫЙ' then // если заголовок окна "НОВЫЙ", то выполнять 1, иначе выполнять 2

SaveAs1Click(Sender) // 1. Идти в процедуру "Сохранить как..."

else (ActiveMDIChild as TChildForm).Memo1.Lines.SaveToFile((ActiveMDIChild as TChildForm).Caption); // 2. Сохранить файл с именем, указанным в заголовке

  (ActiveMDIChild as TChildForm).Memo1.Tag:=0; // добавить

end; // добавить 
 
 

procedure TForm1.Exit1Click(Sender: TObject);

begin

Close; // Закрыть главное окно (закрыть программу)

end; 

unit MainForm; 

interface 

uses

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

  Dialogs, StdCtrls; 

type

  TChildForm = class(TForm)

    Memo1: TMemo;

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

    procedure FormCreate(Sender: TObject);

    procedure Memo1Change(Sender: TObject); 

    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  ChildForm: TChildForm; 

implementation 

uses childUnit1; 

{$R *.dfm} 

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

begin

   Action := caFree;

end; 

procedure TChildForm.FormCreate(Sender: TObject);

begin

   Caption:='НОВЫЙ'; // Заголовок окна нового файла содержит название "НОВЫЙ"

end; 

procedure TChildForm.Memo1Change(Sender: TObject);

begin

  Memo1.Tag:=1; // Текст изменен и подлежит запросу на сохранение

end; 
 

procedure TChildForm.FormCloseQuery(Sender: TObject;

  var CanClose: Boolean);

    Var Res:Integer; // переменная для хранения результата выбора действия 

  begin

  if Memo1.Tag=0 then // если не сохранять, то 1, иначе - 2

begin // 1:

CanClose:=true; // можно закрыть окно

end else

begin // 2:

Res:=Application.MessageBox('Вы желаете сохранить изменения?','Вопрос',MB_YESNOCANCEL + MB_ICONQUESTION);

// вопрос на сохранение

if Res=IDYES then // нажата кнопка "Да"

begin

childForm.BringToFront; // Расположить данное окно выше всех (сделать активным)

form1.Save1Click(Sender); // Вызвать процедуру "Сохранить"

if Memo1.Tag=1 then CanClose:=false;

// если пользователь все-таки не сохранил файл, то окно не закрывать

end;

if Res=IDNo then CanClose:=true; // если "Нет", то можно закрыть

if Res=IDCANCEL then CanClose:=false; // если "Отмена", то не закрывать

end;

end;

  

end. 

Заключение

 

Пояснительная записка выполнена согласно методическим указаниям к курсовой работе по  дисциплине " Программирование и  основы алгоритмизации " для студентов специальности  220301. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

  Список использованных источников

 

Гофман В.,  Хомеменко А. - Delphi Быстрый Старт.

Хомоненко А.Д., Гофман В.Э. - Delphi 7. Наиболее полное руководство.

Климова Л. -Delphi 7. Самоучитель.

Галисеев Г. В. -Компоненты в Delphi 7.

Архангельский А. Я. -Программирование в Delphi 7.

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

Информация о работе Разработка алгоритма программного обеспечения в Delphi 7 для текстового редактора