Иллюстрированный самоучитель по Tirbo Pascal



              

Программа Notebook


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

Program Notebook;

{Программа обслуживает файлы данных "записной книжки". Описание программы см. в гл.15}

Uses App, Objects, Menus, Drivers, Views, StdDlg,

DOS, Memory, Dialogs; type

{Объект TWorkWin создает рамочное окно с полосами скроллинга для управления встроенным в него объектом TInterior}

PWorkWin =TWorkWin;

TWorkWin = object (TWindow)

Constructor Init(Bounds: TRect);

end;

{Объект TDlgWin создает диалоговое окно для

выбора режима работы} 

PDlgWin =TDlgWin; 

TDlgWin = object (TDialog)

Procedure HandleEvent(var Event: TEvent); Virtual; 

end;

{Следующий объект обслуживает внутреннюю часть рамочного

окна TWorkWin. Он создает скроллируемое окно с записями из

архивного файла и с помощью диалогового окна TDlgKin

управляет работой с этими записями} 

PInterior =TInterior; 

TInterior = object (TScroller) 

PS: PStringCollection; 

Location: Word;

Constructor Init(var Bounds: TRect; HS,VS: PScrollBar); 

Procedure Draw; Virtual; 

Procedure ReadFile; 

Destructor Done; Virtual;

Procedure HandleEvent(var Event: TEvent); Virtual; 

end;

{Объект-программа TNotebook поддерживает работу с меню и

строкой статуса} 

TNotebook = object (TApplication)

Procedure InitStatusLine; Virtual;

Procedure InitMenuBar; Virtual; 

Procedure HandleEvent(var Event: TEvent); Virtual;

Procedure FileSave;

Procedure ChangeDir;

Procedure DOSCall;

Procedure FileOpen;

Procedure Work; 

end;

const

{Команды для обработчиков событий:} 

cmChDir = 202; {Сменить каталог} 

cmWork = 203; {Обработать данные}

cmDOS= 204; {Временно выйти в ДОС} 

cmCan= 205; {Команда завершения работы} 

cmDelete= 206; {Уничтожить текущую запись} 

cmSearch = 207;{Искать нужную запись} 

cmEdit = 209;{Редактировать запись} 

cmAdd = 208;{Добавить запись} 

{Множество временно недоступных команд:} 

WinCom1: TCommandSet = [cmSave,cmWork]; 




Содержание  Назад  Вперед