Автор работы: Пользователь скрыл имя, 27 Ноября 2011 в 17:53, курсовая работа
Данное программное приложение будет обеспечивать работу сразу с несколькими текстовыми файлами. В приложении можно будет выполнять работы по редактированию текста.
Во время работы программы пользователь, выполнив требования, изложенные в РУКОВОДСТВЕ ОПЕРАТОРА, может использовать программу.
Введение
1 Техническое задание на разработку программного комплекса
2 Описание постановки задачи, теоретическое обоснование поставленной задачи
3 Руководство программиста
4 Руководство оператора
5.Описание контрольного примера.
6 Блок-схема
7 Текст программы с комментариями
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.
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.
(ActiveMDIChild as TChildForm).Caption:=
(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.
(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(
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('
// вопрос на сохранение
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.