Título: Iconos en botones (Win API) Publicado por: Alien-Z en 16 Septiembre 2011, 21:32 pm Buenas:
He llegado a un punto en el cual, para mejorar la interfaz de un programa, necesito ponerle iconos a los botones, fondos a los edit o static, etc. He encontrado por internet un par de cosas como la función CreateIcon (http://msdn.microsoft.com/en-us/library/ms648059%28v=vs.85%29.aspx) (que me ha dado 500 errores) y esta otra forma: Código
Archivo de recursos: Código
No me da ningún error y el programa se compila y ejecuta correctamente pero no imprime el icono. Título: Re: Iconos en botones (Win API) Publicado por: Queta en 16 Septiembre 2011, 22:00 pm http://www.codeproject.com/KB/buttons/nativewin32xpthemes.aspx (http://www.codeproject.com/KB/buttons/nativewin32xpthemes.aspx)
Título: Re: Iconos en botones (Win API) Publicado por: Alien-Z en 16 Septiembre 2011, 22:44 pm http://www.codeproject.com/KB/buttons/nativewin32xpthemes.aspx (http://www.codeproject.com/KB/buttons/nativewin32xpthemes.aspx) Gracias pero no entiendo muy bien el code; no sé si es que usa una metodología de programación diferente o es que está programado teniendo presente formas de sintaxis más avanzadas, pero apenas comprendo el "main.cpp". ¿No hay ninguna manera menos compleja como la que he posteado?, ¿dónde podría estar el fallo en mi code?, reitero en que hace realtivamente poco que me puse a explorar la API de Windows y aunque sepa usar funciones muy diversas tampo soy un experto. Saludos. Título: Re: Iconos en botones (Win API) Publicado por: Queta en 16 Septiembre 2011, 23:12 pm ¿No entiendes el main.cpp? Tu código me parece que es una plantilla, ¿lo entiendes?
Título: Re: Iconos en botones (Win API) Publicado por: Alien-Z en 16 Septiembre 2011, 23:27 pm ¿No entiendes el main.cpp? Tu código me parece que es una plantilla, ¿lo entiendes? Lo que está comentado en inglés es lo que da como plantilla Code::Blocks, lógicamente no voy a escribir lo básico para programar una ventana cada vez que cree un proyecto para probar funciones y hacer ensayos, en ese caso el código que da Code::Blocks al crear un nuevo proyecto viene a la perfección. No, no entiendo el main.cpp que va con el source del ejemplo que me has pasado por la sencilla razón de que al ser principiante en Win API la única forma que he visto para crear ventanas es la que viene con Code::Blocks y en los ejemplos básicos de guías y foros; si empieza a crear 39898 archivos para hacer una simple ventana lo normal al ser un principiante, noob o como quieras llamarlo es que no me entere. (http://img257.imageshack.us/img257/3461/dibujofcw.jpg) ¿Tantos archivos para añadirle un ICONO a un BOTÓN?. Título: Re: Iconos en botones (Win API) Publicado por: Queta en 16 Septiembre 2011, 23:34 pm Pues antes de hacer botones con iconos deberías aprender cómo realmente funciona y se crea una ventana.
http://msdn.microsoft.com/en-us/library/bb384843.aspx (http://msdn.microsoft.com/en-us/library/bb384843.aspx) http://winapi.conclase.net/ (http://winapi.conclase.net/) Título: Re: Iconos en botones (Win API) Publicado por: Alien-Z en 16 Septiembre 2011, 23:49 pm Pues antes de hacer botones con iconos deberías aprender cómo realmente funciona y se crea una ventana. http://msdn.microsoft.com/en-us/library/bb384843.aspx (http://msdn.microsoft.com/en-us/library/bb384843.aspx) http://winapi.conclase.net/ (http://winapi.conclase.net/) Gracias por tu tiempo, pero no estoy interesando en volver a dar lo que ya he visto, sé cómo crear una ventana; lo que no comprendo son las funciones que hay en el "main.cpp" de tu ejemplo que no tienen nada que ver con la ventana en si, sino que llaman a funciones de los otros 8 archivos dificultando su comprensión. La idea es avanzar poco a poco no verme 15 funciones nuevas de golpe repartidas entre 8 archivos. No te molestes, miraré por otro lado. Suerte. Título: Re: Iconos en botones (Win API) Publicado por: naderST en 17 Septiembre 2011, 05:32 am TODO está en la MSDN pero te ayudo con lo siguiente para ponerle un icono a un botón tienes que usar el mensaje BM_SETIMAGE:
Código
http://msdn.microsoft.com/en-us/library/bb761822(v=vs.85).aspx (http://msdn.microsoft.com/en-us/library/bb761822(v=vs.85).aspx) Título: Re: Iconos en botones (Win API) Publicado por: Alien-Z en 17 Septiembre 2011, 11:54 am TODO está en la MSDN pero te ayudo con lo siguiente para ponerle un icono a un botón tienes que usar el mensaje BM_SETIMAGE: Código
http://msdn.microsoft.com/en-us/library/bb761822(v=vs.85).aspx (http://msdn.microsoft.com/en-us/library/bb761822(v=vs.85).aspx) Muchas gracias, era exactamente lo que buscaba. Aclaro un pequeño punto que no sale en la MSDN por si alguien ojea este tema: BM_SETIMAGE no funciona en Windows XP sino añades BS_ICON o BS_BITMAP al definir el botón/edit/static/etcétera. Un ejemplo: Código
Código
En caso de que sea una imagen en vez de BS_ICON hay que usar BS_BITMAP. Saludos. |