Вертикальное popur- меню
Такое меню создается командой
@ Y,X MENU< массив >, < выр N1>,< выр N2 >[TITLE < выр C >]
Y,X- координаты левого верхнего угла окна меню экрана
< массив >- имя одномерного массива, который содержит элементы меню символьного типа до 50 знаков
< выр N1>- число элементов в меню (до 128)
< выр N2>- число одновременно изображаемых на экране элементов в меню (до 17).
TITLE < выр C >- заглавное меню, изображаемое в верхней части.
Команда @….MENU только отображает меню на экране.
Активизация меню осуществляется командой
READ MENU TO < переменная > [SAVE]
< переменная >- номер позиции меню, выбранная пользователем, если она не определена, то курсор устанавливается на первую строку меню.
Параметр SAVE позволяет сохранить меню на экране после его использования. Оно может быть стерто командой CLEAR.
Пример
CLEAR
DIMEN SION a (3)
A(1)= ' Ввод данных '
A(2)= ' Редактирование '
а(3)= ' Удаление ' меню
М=2 ввод данных
@ 8.30 MENU a.3 TITLE ' Меню ' редактирование
READ MENU TO m удаление
Двухуровневое polldown - меню
Такое меню состоит из главного горизонтального меню (меню заголовков), располагающегося в верхней части экрана, и несколько вложенных в него вспомогательных вертикальных меню. Каждые вспомогательные меню возникают в тот момент, когда курсор перемещается в соответствующую позицию главного меню.
Структура двухуровневого меню реализуется двумя командами определения меню:
MENU BAR, MENU и командами активизации
READ MENU BAR TO
MENU BAR < массив >, < выр N >
< выр N >- общее число пунктов меню
< массив >- двухмерный символьный массив вида МАССИВ (k,r). Первый столбец массива (элементы МАССИВ (с,1)) содержит собственно пункты меню, второй столбец (МАССИВ (i,r))- расширенные комментарии к позициям меню, индицируемые в строке, номер которой определяется командой SET MASSAGT TO
< номер строки >
Если эти комментарии не нужны, массив все равно должен быть двухуровневый и элементы МАССИВ (i,r) должны быть символьного типа, хотя бы и нулевой длины.
На экране предъявляется столько пунктов меню, сколько удается разместить в строке экрана. Остальные позиции делаются доступными путем прокручивания.
Команда
MENU < выр N1 >, < массив >, <выр N2 >[< выр N3>]
Определяет содержание вспомогательного POPUR -меню и его "привязку" к соответствующему пункту главного меню.
< выр N1 >- номер элемента главного меню, который будет вызывать данное вспомогательное меню.
< массив >- одномерный символьный массив, содержащий пункты меню
< выр N2 >- число пунктов меню
< выр N3 >- число одновременно показываемых меню.
Активизирует меню команда
READ MENU BAR TO < перем. 1>,< перем. 2 > [SAVE]
< перем.1,2>-фиксирует вызов пользователя в меню, при их отсутствии положение 1,1.
SAVE - сохранено на экране.
Пример:
SET TALK OFF
SET MESSAGE TO 20
DIMENSION a (4,2)
A(1,1)= 'ДИСК'
A(2,1)= ' Обработка '
A(3,1)= ' Данные '
A(4,1)= ' Конец '
A(1,2)= ' Работа с диском '
A(2,2)= ' Вычисление и поиск '
A(3,2)= ' Работа с базой'
A(4,2)= ' Выход в DOS '
DIMENSION в (2)
В(1)= ' Запись '
В(2)= ' Копирование '
DIMENSION C(3)
C(1)= ' Итого '
C(2)= ' Среднее '
C(3)= ' Сортировка'
DIMENSION d(5)
D(1)= ' Дополнение '
D(2)= ' Редактирование '
D(3)= '- '
D(4)= ' Удаление '
"Формат, образа меню '
MENU BAR a,4
MENU 1,b,r
MENU 2,c,3
MENU 3,d,4
G=3
V=2
DOWHILE. T.
READ MTNU BAR TO g.v
DO CASE
< команды обработки выбора >
CASE g=4
CANCEL
END CASE
END DO.
DBASE- меню имеет два типа меню:
Вертикальное ('всплывающее', POPUR- меню)
Горизонтальное (BAR- меню).
