Введение в программирование

       

Заголовком окна будет имя файла}


{Создать новый документ} procedure TMainForm.FileNew1Execute(Sender: TObject); begin {Создание дочернего окна с новым именем} CreateMDIChild('NONAME' + IntToStr(MDIChildCount + 1)); end; {Открыть документ} procedure TMainForm.FileOpen1Execute(Sender: TObject); begin if OpenDialog.Execute then {Выбор имени документа} CreateMDIChild(OpenDialog.FileName); {Создание окна} end; procedure TMainForm.CreateMDIChild(const Name: string); var Child: TMDIChild; begin { Класс TMDIChild определен в модуле CHILDWIN.PAS } Child := TMDIChild.Create(Application); {Создание окна} Child.Caption := Name; { Заголовком окна будет имя файла} if FileExists(Name) then // Дочернее окно содержит поле типа TMemo, в которое // выполняется загрузка текстового файла: Child.Memo1.Lines.LoadFromFile(Name); end; Для завершения приложения выполняется следующая процедура: procedure TMainForm.FileExit1Execute(Sender: TObject); begin Close; end; В модуле childwin.pas находится код дочерней формы: type TMDIChild = class(TForm) Memo1: TMemo; {Поле для отображения текста} procedure FormClose(Sender: TObject; var Action: TCloseAction); end; implementation procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; end.

Листинг 25.2.
Закрыть окно





{Создать новый документ}

procedure TMainForm.FileNew1Execute(Sender: TObject);

begin

{Создание дочернего окна с новым именем}

CreateMDIChild('NONAME' + IntToStr(MDIChildCount + 1));

end;

{Открыть документ}

procedure TMainForm.FileOpen1Execute(Sender: TObject);



begin

if OpenDialog.Execute then {Выбор имени документа}

CreateMDIChild(OpenDialog.FileName); {Создание окна}

end;

procedure TMainForm.CreateMDIChild(const Name: string);

var

Child: TMDIChild;

begin

{ Класс TMDIChild определен в модуле CHILDWIN.PAS }

Child := TMDIChild.Create(Application); {Создание окна}

Child.Caption := Name; {Заголовком окна будет

имя файла}

if FileExists(Name) then

// Дочернее окно содержит поле типа TMemo, в которое

// выполняется загрузка текстового файла:

Child.Memo1.Lines.LoadFromFile(Name);

end;

Для завершения приложения выполняется следующая процедура:

procedure TMainForm.FileExit1Execute(Sender: TObject);

begin Close; end;

В модуле childwin.pas находится код дочерней формы:

type

TMDIChild = class(TForm)

Memo1: TMemo; {Поле для отображения текста}

procedure FormClose(Sender: TObject;

var Action: TCloseAction);

end;

implementation

procedure TMDIChild.FormClose(Sender: TObject;

var Action: TCloseAction);

begin Action := caFree; end;

end.


Содержание раздела