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

Программа Notebook

{-------------}
Procedure TNotebook. InitMenuBar;
{Создание верхнего меню}
var
R: TRect;
begin
GetExtent(R);
R.B.Y: = succ (R.A.Y); {R – координаты строки меню}
MenuBar: = New(PMenuBar, Init(R,
NewMenu ({Создаем меню}
{Первый элемент нового меню представляет собой подменю (меню второго уровня).
'Создаем его} NewSubMenu ('~F~/Файл', hcNoContext,
{Описываем элемент главного меню}
NewMenu ({Создаем подменю}
NewItem({Первый элемент}
'~1~/ Открыть', 'F3 ', kbF3,cmOpen, hcNoContext,
NewItem({Второй элемент}
'~2~/ Закрыть', 'F2',kbF2,cmSave,hcNoContext,
NewItem({Третий элемент}
'~3~/ Сменить диск1, ' ', 0, cmChangeDir, hcNoContext,
NewLine({Строка-разделитель}
NewItem('~4~/ Вызов ДОС', ' ', 0, cmDOSShell, hcNoContext,
NewItem('~5~/ Конец работы', ' ALT + X', kbALTX, cmQuit,hcNoContext,
NIL)))))) {Нет других элементов подменю}),
{Создаем второй элемент главного меню}
NewItem('~W~/ Работа', ' ', kbF4,cmWork, hcNoContext,
NIL) {Нет других элементов главного меню}
))))
end; {TNotebook. InitMenuBar}
{-----------------}
Procedure TNotebook. InitStatusLine;
{Формирует строку статуса}
var
R: TRect; {Границы строки статуса}
begin
GetExtent (R); {Получаем в R координаты всего экрана}
R.A.Y: = pred(R.B.Y);
StatusLine: = New(PStatusLine,
Init(R, {Создаем строку статуса}
NewStatusDef (0, $FFFF, {Устанавливаем максимальный диапазон контекстной справочной службы}
NewStatusKey('~ALT + X~ Выход1, kbALTX, cmQuit,
NewStatusKey(I~F2~ Закрыть', kbF2, cmSaveFile,
NewStatusKey ('~F3~ Открыть', kbF3, cmOpenFile,
NewStatusKey ('~F4~ Работа', kbF4, cmWork,
NewStatusKey ('~F10~ Меню1, kbF10, craMenu,
NIL))))), {Нет других клавиш}
NIL) {Нет других определений}
));
DisableCommands (WinCom1) {Запрещаем недоступные команды}
end; {TNotebook. InitStatusLine}
{------------------}
var
Nbook: TNotebook;
begin
Nbook. Init;
Nbook. Run;
Nbook. Done
end.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.