Programación General => C/C++ => Visual C++ => Mensaje iniciado por: dana_krycek en Lunes 2 de Agosto de 2004, 18:36
Título: Menus En Visual C++
Publicado por: dana_krycek en Lunes 2 de Agosto de 2004, 18:36
Hola Cuando en visual c++ .net creo un menu que quiero que tenga las típicas funciones de abrir archivo, guardar..., ¿cómo lo hago? Ya sé que con el asistente de MFC crea ese tipo de menús directamente pero estoy creando una aplicación y quiero que sólo se puedan abrir archivos con una extensión determinada.
Gracias
Título: Re: Menus En Visual C++
Publicado por: 5erg10 en Martes 3 de Agosto de 2004, 22:54
Pues a ver, puedes usar la clase CFileDialog que muestra un cuadro de diálogo de los típicos de Windows para abrir archivos. Si lo que quieres es que solo muestre archivos con una extension determinada, se lo tendrías que indicar al constructor de dicha clase, de la siguiente forma:
Código: Text
char * extensiones = "Fichero tipo 1|*.tp1|Fichero tipo 2|*.tp2|Todos los ficheros (*.*)|*.*||";
En la cadena "extensiones" van los tipos de extensiones que se podrán elegir para mostrar (igual que por ejemplo el wordpad, que puedes elegir varios tipos de extensiones), y en "extension_por_defecto" va la extension por defecto de tus archivos.
Si quieres más información de la clase CFileDialog, visita el enlace siguiente:
PD. bueno, se me olvidaba, puedes crear el menú con el asistente de MFC y él te añadirá la clase CFileDialog, después la modificas para que funcione con las extensiones que te crea (es que lo de hacer tus propios menús es chungo de explicar, me sabía un enlace donde lo explicaban, pero ahora lo he probao y no funciona)
Título: Re: Menus En Visual C++
Publicado por: ryanortegarios en Lunes 28 de Febrero de 2005, 20:02
Que tal.
Estoy tratando de eliminar opciones de un POPUP MENU que esta hecho con AppendMenu teine alguien algun ejemplo de la utilizacion de esta herramienta.
:smartass:
Título: Re: Menus En Visual C++
Publicado por: ryanortegarios en Martes 1 de Marzo de 2005, 17:38
La funcion Append menu la consegui en la libreria de MSDN: CMenu::AppendMenu BOOL AppendMenu( UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );