С для профессиональных программистов

Создание фрейма меню


Перед использованием меню для этого должен быть создан фрейм. Функция make_menu(), показанная здесь, создает фрейм меню.

/* создание фрейма иерархического меню.

1 если фрейм может быть создан

в противном случае 0 */ make_menu(num,menu,keys,count,x,y,border) int num;   /* номер меню */ char *menu;   /* текст меню */ char *keys;   /* горячие клавиши */ int count;    /* число альтернатив */ int x,y;      /* левый верхний угол */ int border;   /* рамка */

register int i,len;

int endx,endy,choice,vmode;

unsigned char *p;

if(num>MAX_FRAME)

printf("Слишком много меню");

return 0;

if((x>24)||(x<0)||(y>79)||(y<0))

printf(" выход за пределы экрана");

return 0;

len=0;

endy=len+2+y;

if((endx+1>24) || (endy+1>79))

printf(" выход за пределы экрана");

return 0;

/* размещение памяти для видео буфера */

/* создание фрейма */

frame[num].endx=endx;

frame[num].endy=endy;

frame[num].menu = (char **) menu;

frame[num].count = count;

return 1;

Вы вызываете make_menu с теми же аргументами, какие используются в popup() кроме номера меню, который должен быть определен в первом аргументе. Этот номер используется для идентификации меню.



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