ncmenu.c (892B)
1 #include <ncurses.h> 2 3 int main(){ 4 initscr(); 5 noecho(); 6 cbreak(); 7 8 int yMax, xMax; 9 getmaxyx(stdscr, yMax, xMax); 10 11 WINDOW * menuwin = newwin(6, xMax - 12, yMax-8, 5); 12 box(menuwin,0, 0); 13 refresh(); 14 wrefresh(menuwin); 15 16 char num; 17 int posX=xMax - 30, posY=yMax - 5; 18 while(num != '0'){ 19 num = getch(); 20 mvaddch(posY, posX, ' '); 21 switch(num){ 22 case 'n': 23 posY++; 24 break; 25 case 'e': 26 posY--; 27 break; 28 case 'h': 29 posX--; 30 break; 31 case 'i': 32 posX++; 33 break; 34 default: 35 break; 36 } 37 mvaddch(posY, posX, 'o'); 38 refresh(); 39 wrefresh(menuwin); 40 } 41 endwin(); 42 43 return 0; 44 }