#include void menu(int renglon, int ant) { if (renglon !=5) { mvchgat(ant, 1,4,A_BOLD,2,NULL); mvchgat(renglon,1,4,A_BOLD,3,NULL); } else { mvprintw(1,1,"Altas "); mvprintw(2,1,"Bajas "); mvprintw(3,1,"Consulta"); mvprintw(4,1,"Salir "); } refresh(); } int main(int argc, char *argv[]) { int ch, ren=4, anterior=3, vez=1; int i, j, k; initscr(); noecho(); cbreak(); keypad(stdscr, TRUE); if (has_colors()==FALSE) { mvprintw(5,2,"Tu terminal no soporta colores"); exit(1); } start_color(); init_pair(1, COLOR_BLACK, COLOR_WHITE); init_pair(2, COLOR_RED, COLOR_BLACK); init_pair(3, COLOR_CYAN, COLOR_MAGENTA); printw("Presionar F1 para salir"); mvchgat(0,0,5,A_BOLD,3, NULL); mvchgat(0,6,5,A_BOLD,1, NULL); mvchgat(0,12,5,A_BOLD,2, NULL); //getch(); /*el getch causa problemas al querer utilizar chgat*/ for (i=0; i< 10000000; i++) for (j=0; j>100000; j++) for(k=0; k<10000; k++); mvchgat(0,0,5,A_BOLD,2, NULL); mvchgat(0,6,5,A_BOLD,3, NULL); mvchgat(0,12,5,A_BOLD,1, NULL); mvprintw(10,10, "nanasnsdoadfh asjhfaosf afjaslkf"); mvchgat(10,15,5,A_BOLD,3, NULL); menu(5, 0); menu(4, 3); while((ch=getch()) != KEY_F(1)) { switch(ch) { case KEY_UP: mvchgat(10,15,5,A_BOLD,1, NULL); mvchgat(10,10,5,A_BOLD,3, NULL); anterior=ren; if (ren==1) ren=4; else ren--; menu(ren, anterior); break; case KEY_DOWN: mvchgat(10,15,5,A_BOLD,3, NULL); mvchgat(10,10,5,A_BOLD,1, NULL); anterior=ren; if (ren==4) ren=1; else ren++; menu(ren, anterior); break; case KEY_LEFT: break; } } endwin(); return 0; }