elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  como hacer un menu en c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: como hacer un menu en c++  (Leído 177,935 veces)
tragantras


Desconectado Desconectado

Mensajes: 465


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #10 en: 3 Diciembre 2009, 15:47 pm »

Citar
como hacer un menu en c++

Pasos a seguir para hacer un menú en C++:

1º Abrimos nuestro IDE favorito o editor de texto plano.

2º Pensamos que tipo de menú queremos hacer, si gráfico o de texto, que aspecto queremos que tenga, como estará organizado etc.

3º Empezamos a escribir código moduladamente, construimos cacho a cacho nuestro menú.

4º ¿Qué ha pasado? ¿Cómo continuo? me quedé atascado... puede ser que al probar un módulo no me compile (repasamos el código y si es necesario consultamos Google y manuales de C++), puede ocurrir que al ejecutar nos haya explotado (unfallo de segmentación u otro error inesperado) o que simplemente no haga lo que queramos (en ambos caso, depuramos con nuestro depurador favorito o a mano, con nuestra técnica favoritas, poniendo asertos o visualizando variables con cout... etc)

5º Demonios, he depurado, he consultado mis apuntes de C++, por internet y no me veo capaz de avanzar... entonces entramos a elhacker.net, categoría de programación, foro de C/C++

6º Lo primero, buscar si nuestra duda está resuelta en algún post ya existente, para esta tarea nos podemos ayudar el buscador del foro (mira botones superiores)

7º Vaya, no encuentro lo que busco... tendremos que preguntar, abrimos un tema, con un titulo significativo, por ejemplo: 'como hacer un menu en C++'

8º En nuestro mensaje explicamos detalladamente lo que queremos, tipo de menú, aspecto.... camino que hemos tomado para realizarlo, problemas que hemos tenido y cómo hemos intentado solucionar dichos problemas, esta epxlicación debería ir acompañada SIEMPRE del código programado.

9º Felicidades, la gente ha captado lo que quieres hacer, se ha convencido de que te hasm olestado en buscar y en solucionar tus problemas y tienen material suficiente para ayudarte. Ahora es cuestión de tiempo para que lleguen las respuestas y las ayudas.





sin duda sin duda, pq yo tambien me empiezo a cansar de que la gente venga con preguntas del tipo:

¿Como se hace  XXXX programa? xD

lo suyo del foro es responder a preguntas no a ejercicios que manden en clase


pD: no quiero ser estupido, es solo que empiezo a cansarme xD


En línea

Colaboraciones:
1 2
nicolas2013alcubo

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #11 en: 5 Mayo 2013, 05:31 am »

Por favor, coloquen el ejemplo de un código en C de un menú en el que con los cursores se resalten la opcion (El clásico video invertido) y al presionar Enter se seleccione la opción señalada, no me refiero a los menues en el que la opción se seleccione pulsando el número o letra indicada.


En línea

nicolas2013alcubo

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #12 en: 1 Junio 2013, 01:06 am »

Respondan por favor... Hace tiempo que solicité eso del menú con los cursores. Gracias. Nico
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #13 en: 2 Junio 2013, 12:02 pm »

Por favor, coloquen el ejemplo de un código en C de un menú en el que con los cursores se resalten la opcion (El clásico video invertido) y al presionar Enter se seleccione la opción señalada, no me refiero a los menús en el que la opción se seleccione pulsando el número o letra indicada.


La verdad es que me lo he tomado como todo un reto y al final salió, aunque es sólo un esbozo de algo que haré más depurado con un pelín más de tiempo, pero para que vayas viendo algo. Eso sí, haciendo uso  de las API de windows y con color en el contraste y en la opción seleccionada. Para más información a este respecto ver el tema de gama de colores. Espero te sea útil:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <windows.h>
  4.  
  5. void contraste (int abajo);
  6.  
  7. int main ()
  8. {
  9.    int arriba=1,abajo=1;
  10.    puts ("Menu");
  11.    puts ("1. Entrar datos");
  12.    puts ("2. Leer datos");
  13.    puts ("3. Borrrar datos");
  14.    gotoxy (0,1);
  15.    while (1)
  16.    {
  17.        contraste ( abajo);
  18.        if (abajo>3 || abajo<1)
  19.            {
  20.                gotoxy (0,1);
  21.                abajo=1;
  22.            }
  23.  
  24.        else if (GetAsyncKeyState(VK_DOWN))
  25.            {
  26.                contraste ( abajo);
  27.                gotoxy (0,abajo+1);
  28.  
  29.                abajo++;
  30.                Sleep(100);
  31.            }
  32.        else if (GetAsyncKeyState(VK_UP))
  33.            {
  34.                contraste ( abajo);
  35.                gotoxy (0,abajo-1);
  36.                contraste ( abajo);
  37.                abajo--;
  38.                Sleep(100);
  39.            }
  40.        else  if (GetAsyncKeyState(VK_RETURN))
  41.                {
  42.                    system ("cls");
  43.                    if (abajo==1)
  44.                        {
  45.                            color (30);
  46.                            puts("Hago esto si abajo=1");
  47.                            color (7);
  48.                            break;
  49.                        }
  50.                    else if (abajo==2)
  51.                        {
  52.                            color (62);
  53.                            puts("Hago esto si abajo=2");
  54.                            color (7);
  55.                            break;
  56.  
  57.                        }
  58.                    else
  59.                        {
  60.                             color (181);
  61.                             puts("Hago esto si abajo=3");
  62.                             color (7);
  63.                             break;
  64.                        }
  65.  
  66.                    Sleep(100);
  67.                }
  68.    }
  69.    system ("pause");
  70.    return 0;
  71. }
  72.  
  73. int gotoxy(int x, int y)
  74. {
  75.   COORD coord;
  76.   HANDLE h_stdout;
  77.   coord.X = x;
  78.   coord.Y = y;
  79.   if ((h_stdout = GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
  80.      return 0;
  81.   if (SetConsoleCursorPosition(h_stdout, coord) == 0)
  82.      return 0;
  83.   return 1;
  84. }
  85. int color (int n)
  86. {
  87.        SetConsoleTextAttribute(GetStdHandle (STD_OUTPUT_HANDLE), n );
  88. }
  89.  
  90. void contraste (int abajo)
  91. {
  92.  
  93.        if (abajo ==1)
  94.        {
  95.            color (7);
  96.            gotoxy (0,0);
  97.            puts ("Menu");
  98.            color (112);
  99.            puts ("1. Entrar datos");
  100.            color (7);
  101.            puts ("2. Leer datos");
  102.            puts ("3. Borrrar datos");
  103.            gotoxy (0,abajo);
  104.            Sleep(100);
  105.        }
  106.        else if (abajo ==2)
  107.        {
  108.            //color (112);
  109.            gotoxy (0,0);
  110.            color (7);
  111.            puts ("Menu");
  112.            puts ("1. Entrar datos");
  113.            color (112);
  114.            puts ("2. Leer datos");
  115.            color (7);
  116.            puts ("3. Borrrar datos");
  117.            color (7);
  118.            gotoxy (0,abajo);
  119.            Sleep(100);
  120.        }
  121.       else  if (abajo ==3)
  122.        {
  123.            //color (112);
  124.            gotoxy (0,0);
  125.            color (7);
  126.            puts ("Menu");
  127.            puts ("1. Entrar datos");
  128.            puts ("2. Leer datos");
  129.            color (112);
  130.            puts ("3. Borrrar datos");
  131.            color (7);
  132.            gotoxy (0,abajo);
  133.            Sleep(100);
  134.        }
  135. }
  136.  

Saluditos!. ... ..
« Última modificación: 2 Junio 2013, 14:01 pm por leosansan » En línea

roger2427

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #14 en: 14 Diciembre 2013, 10:00 am »

gracias parce eres un maestro me ayudo bastante con un rpoyecto que tengo que hacer
pero me podrias explicar como hacer las funciones que pusite la del contraste
y las sentencias que dicen GetAsyncKeyState(VK_UP) porque tengo que defender el proyecto
me seria de gran ayuda gracias
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: como hacer un menu en c++
« Respuesta #15 en: 14 Diciembre 2013, 18:32 pm »


Lee la referencia de la  MSDN tambien la de GetAsyncKeyState.


Saluditos! ..... !!!!       
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Hacer Un Excelente Menu de apertura, como se hara?
Multimedia
jpmo4 5 3,811 Último mensaje 28 Junio 2008, 07:53 am
por jpmo4
¿Como hacer un menú para una pelicula?
Multimedia
Puntoinfinito 6 7,521 Último mensaje 11 Mayo 2012, 15:00 pm
por Puntoinfinito
¿Cómo hacer desplegables grandes para menú?
Desarrollo Web
Linton 4 2,663 Último mensaje 31 Marzo 2014, 16:31 pm
por Linton
[AYUDA] Hacer un menú en GUI
Programación C/C++
code_breaker43 1 1,817 Último mensaje 29 Noviembre 2017, 17:35 pm
por MAFUS
Problema hacer Menu
Programación Visual Basic
corlo 4 1,958 Último mensaje 6 Febrero 2022, 15:33 pm
por corlo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines