• Domingo 15 de Diciembre de 2024, 05:53

Autor Tema:  Como Realizar Un Menu Con Scroll  (Leído 939 veces)

gladiacor

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Como Realizar Un Menu Con Scroll
« en: Jueves 26 de Febrero de 2004, 11:17 »
0
:( Bueno mi problema es que necesito hacer un menu en el cual pueda elegir las opciones pulsando o desplazandome con las flechas arriba y abajo lo he intentado con kbhit pero no me ha salido, agradeceria alguna ayuda. gracias

Zholo

  • Nuevo Miembro
  • *
  • Mensajes: 16
    • Ver Perfil
Re: Como Realizar Un Menu Con Scroll
« Respuesta #1 en: Viernes 4 de Junio de 2004, 23:27 »
0
Hola

aqui te mando un ejemplo de un menu manejado con las flechas arriba y abajo

Código: Text
  1. #include <stdio.h>
  2. #include <conio.h>
  3. void menu(void)
  4. {
  5.      textbackground(BLUE);
  6.      textcolor(WHITE);
  7.      clrscr();
  8.      gotoxy(20,10);printf("ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»\n");
  9.      gotoxy(20,11);printf("º                    º\n");
  10.      gotoxy(20,12);printf("º  opcion 1          º\n");
  11.      gotoxy(20,13);printf("º  opcion 2          º\n");
  12.      gotoxy(20,14);printf("º  opcion 3          º\n");
  13.      gotoxy(20,15);printf("º  opcion 4          º\n");
  14.      gotoxy(20,16);printf("º  opcion 5          º\n");
  15.      gotoxy(20,17);printf("º  opcion 6          º\n");
  16.      gotoxy(20,18);printf("º  opcion 7          º\n");
  17.      gotoxy(20,19);printf("º  opcion 8          º\n");
  18.      gotoxy(20,20);printf("º                    º\n");
  19.      gotoxy(20,21);printf("ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\n");
  20. }
  21. void main(void)
  22. {
  23.   int pos=0;
  24.   char t;
  25.   _setcursortype(_NOCURSOR);
  26.   while(1)
  27.    {
  28.   menu();
  29.   textcolor(RED);
  30.   gotoxy(23,12+pos);
  31.   switch(pos)
  32.    {
  33.      case 0 : cprintf("opcion 1");
  34.         break;
  35.      case 1 : cprintf("opcion 2");
  36.         break;
  37.      case 2 : cprintf("opcion 3");
  38.         break;
  39.      case 3 : cprintf("opcion 4");
  40.         break;
  41.      case 4 : cprintf("opcion 5");
  42.         break;
  43.      case 5 : cprintf("opcion 6");
  44.         break;
  45.      case 6 : cprintf("opcion 7");
  46.         break;
  47.      case 7 : cprintf("opcion 8");
  48.         break;
  49.    }//switch()
  50.      t=getch();
  51.      if(t==0)
  52.       {
  53.   t=getch();
  54.   switch(t)
  55.    {
  56.      case 80 : pos++;
  57.          if(pos==8)
  58.           pos=0;
  59.          break;
  60.      case 72 : pos--;
  61.          if(pos==-1)
  62.           pos=7;
  63.          break;
  64.    }//break
  65.       }//if
  66.      else if(t==27)
  67.       break;
  68.    }//while
  69.   _setcursortype(_NORMALCURSOR);
  70. }
  71.  

ten en cuenta que las flechas tienen dos codigos ascii, por asi decirlo en cero (0) y otro codigo por eso hay un if y un switch en el ejemplo

espero que te sirva....