Tema: Menus
Ver Mensaje Individual
  #17 (permalink)  
Antiguo 30/10/2006, 10:02
MaxExtreme
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 10 meses
Puntos: 17
Pues para crear un menú de ese estilo una lista enlazada puede representar cada elemento, con unos datos como:

Código:
struct elemento {
    char titulo[40];
    void (* funcion)();
    struct elemento * submenu;
    struct elemento * siguiente;
}
Simplemente vas rellenándolo con el título, la funcion a la que quieras llamar cuando sea pulsado, NULL y el puntero al siguiente elemento. Cuando quieras un submenú en alguna de las opciones, cambias el NULL de "submenu" por la direccion del primer elemento de otro sub menu, y fuera.

Después de acabar el programa es muy gracioso y útil (para saber si funciona) hacer un menú cíclico haciendo que "submenu" apunte a la cabeza del mismo menu en el que estás. Algo así como que "Guardar ->" te volviese a sacar el menú Archivo.