Курсовая работа: Практичні аспекти створення програмного забезпечення
Procedure AddItem(Caption: String; Action: ProcedurePointer); {метод. додати пукт до меню}
Procedure ExecuteAction;{виконати дiю: передати керування процедурi на яку вказує покажчик видiленого пункту}
Function getMaximalWidth: Integer; {знайти найширший пункт}
Procedure Print;{вивести меню на екран}
procedure Activate;{передати керування у меню}
end;
var Num: Integer;
Input: MyArray;
i, j: integer;
OriginalMode : Word; {для перемикання текстових режимiв}
ScreenWidth : Integer;{ширина екрану}
ScreenHeight : Integer;{висота екрану}
CharBuffer : Char;{непотрiбно :)}
Menu: TMenu;{об"єкт меню}
{процедура створення текстового вiкна з параметрами кольору фону та тексту}
Procedure CreateTextWindow( X, Y, Width, Height: Integer;
BackgroundColor, ForegroundColor: Integer);
begin
If (X + Width) > ScreenWidth then Width := ScreenWidth - X;
If (Y + Height) > ScreenHeight then Height := ScreenHeight - Y;
Window(X, Y, Width, Height);
TextBackground(BackgroundColor);
TextColor(ForegroundColor);
ClrScr;
end;
{активацiя меню}
Procedure TMenu.Activate;
var CommandKey: Char;
I: Integer;