Ejemplo de menú

Anuncio
// MenuC.cpp.
//
#include
#include
#include
#include
"stdafx.h"
<stdlib.h>
<windows.h>
<conio.h>
#define a 30
#define b 5
void clrscr();
void gotoxy(short x, short y);
void limpiarBuffer();
char menuPrincipal();
char menuSecundario();
int _tmain(int argc, _TCHAR* argv[]){
char opcion;
do{
opcion = menuPrincipal();
clrscr();
gotoxy(a, b);
switch (opcion){
case '1':
printf("Se ingreso la opcion 1");
Sleep(1000);
break;
case '2':
printf("Se ingreso la opcion 2");
Sleep(1000);
break;
case '3':
limpiarBuffer();
do{
opcion = menuSecundario();
clrscr();
gotoxy(a, b);
switch (opcion){
case 'A': case 'a':
printf("Se ingreso la opcion A");
Sleep(1000);
break;
case 'B': case 'b':
printf("Se ingreso la opcion B");
Sleep(1000);
break;
case 'C': case 'c':
printf("Se ingreso la opcion C");
Sleep(1000);
break;
case 'D': case 'd':
printf("Fin de Consulta");
Sleep(1000);
break;
default:
printf("Ingrese una opcion entre A y D");
Sleep(1000);
break;
}
limpiarBuffer();
}while (opcion != 'D' && opcion != 'd');
break;
case '4':
printf("Se ingreso la opcion 4");
Sleep(1000);
break;
case '5':
printf("FIN - Hasta luego \n");
Sleep(1000);
default:
printf("Ingrese una opcion entre 1 y 5");
Sleep(1000);
break;
}
limpiarBuffer();
}while (opcion != '5');
return 0;
}
char menuPrincipal(){
char op;
//inicia para las posiones
clrscr();
gotoxy(a, b);
printf("MENU");
gotoxy(a, b + 2);
printf("1 - Agregar");
gotoxy(a, b + 3);
printf("2 - Eliminar");
gotoxy(a, b + 4);
printf("3 - Consultar");
gotoxy(a, b + 5);
printf("4 - Modificar");
gotoxy(a, b + 6);
printf("5 - Fin");
gotoxy(a, b + 7);
printf("Ingrese una opcion: ");
scanf("%c", &op);
return op;
}
char menuSecundario(){
char op;
clrscr();
gotoxy(a, b);
printf("MENU");
gotoxy(a, b + 2);
printf("1 - Agregar");
gotoxy(a, b + 3);
printf("2 - Eliminar");
gotoxy(a, b + 4);
printf("3 - Consultar");
gotoxy(a, b + 5);
printf("
A - Consultar por edad");
gotoxy(a, b + 6);
printf("
B - Consultar por nombre");
gotoxy(a, b + 7);
printf("
C - Consultar por cedula");
gotoxy(a, b + 8);
printf("
D - Fin de consulta");
gotoxy(a, b + 9);
printf("4 - Modificar");
gotoxy(a, b + 10);
printf("5 - Fin");
gotoxy(a, 21);
printf("Ingrese una opcion: ");
scanf("%c", &op);
return op;
}
/* Función que emula el CLRSCR */
void clrscr(){
system("cls");
}
/* Función que emula el GOTOXY */
void gotoxy(short x, short y){
COORD pantalla;
pantalla.X=(short) x;
pantalla.Y=(short) y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pantalla);
}
/* Limpiar buffer */
void limpiarBuffer(){
fflush(stdin);
}
Descargar