Descargar el PDF
Descargar el PDF
¿Alguna vez te preguntaste cómo se hacen programas como el Paint o la Calculadora? Aprende cómo crear una aplicación básica usando esta guía paso a paso.
Pasos
-
Consigue un compilador. Un compilador transforma el código fuente (que escribirás pronto) en una aplicación ejecutable. Para los propósitos de este tutorial, consigue DEV-CPP IDE. Puedes descargarlo aquí .
-
Después de instalar DEV-CPP, ábrelo. Se te presentará una ventana con un área de texto en el que escribirás el código fuente.
-
Prepárate a escribir un programa para mostrar texto en una caja. Antes de comenzar a escribir el código, ten en cuenta que las aplicaciones de Win32 no se comportan de la misma manera que bajo otros lenguajes, como JAVA.
-
En la pantalla principal de DEV-CPP ve a Archivo -> Nuevo -> Proyecto. Se te presentará otra pantalla. Escoge la pequeña imagen que dice “Aplicación de Windows” y selecciona el lenguaje C no C++ . En la caja de texto, donde dice Nombre , ingresa SimpleProgram . Ahora DEV-CPP te preguntará si quieres guardarlo. Guarda el archivo en cualquier directorio, pero asegúrate de recordarlo. Ni bien termines con eso se te presentará una plantilla en la pantalla del código. Haz Ctrl+A y luego Retroceso. Hacemos esto para poder comenzar de nuevo.
-
Al principio del código escribe "#include <windows.h>" (sin comillas). Esto incluirá la biblioteca de Windows para que puedas hacer una aplicación. Directamente debajo, escribe: #include "resource.h" Y a continuación escribe: const char g_szClassName[] = "myWindowClass";
-
Escribe un método para manejar todos los mensajes, y escribe otro método en el que manejaremos los mensajes de los recursos. No te preocupes si esto te resulta confuso, se te aclarará más adelante. Ahora guarda el código como SimpleProg.c. Lo dejaremos así por el momento.
-
Crea un Script de Recursos. Un Script de Recursos es una pieza de código fuente que define todos los controles (Cajas de texto, Botones, etc.). Incorpora el Script de Recursos al programa, y ¡Presto! Ya tendrás un programa. Escribir el Script de Recursos no es difícil, pero puede consumirte tiempo si no tienes un Editor Visual. Esto es porque necesitas estimar las coordenadas exactas de X e Y de los controles, etc. En la pantalla principal de DEV-CPP ve a Archivo -> Nuevo -> Archivo de recursos. DEV-CPP te preguntará ¿Agregar archivo de recursos al Proyecto actual? Haz clic en SI. Al principio del script de recursos escribe #include "resource.h", y también escribe #include <afxres.h> Esto se encargará de todos los controles.
-
Crea tu primer control: un menú sencillo. Escribe:
IDR_THEMENU MENU BEGIN POPUP "&Archivo" BEGIN MENUITEM "&Salir" , ID_FILE_EXIT END END
-
Ahora, para la parte del botón. Tu botón estará dentro de un diálogo, por lo que primero debemos crear el diálogo. Para hacerlo escribe:
IDD_SIMPLECONTROL DIALOG 50 , 50 , 150 , 142 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU MENU IDR_THEMENU CAPTION "Simple Prog" FONT 8 , "MS Sans Serif" BEGIN DEFPUSHBUTTON "¡Hola!" , ID_HELLO , 10 , 10 , 40 , 15 END
-
¡Listo! Ya terminamos con nuestro script de recursos. Resta sólo una cosa más. Tenemos que asignarle valores a todas las cosas que definimos en nuestro script de recursos (por ejemplo IDR_THEMENU, etc.). Guarda el archivo de recursos como SimpleProg.rc
-
Ve a Archivo -> Nuevo -> Archivo de código. ¿Agregar el archivo de código al proyecto actual? Sí. Se te presentará una pantalla en blanco. Para asignar valores a nuestros controles definidos, debemos darle números. No importa demasiado qué números le des a tus controles, pero debes hacerlo de forma organizada. Por ejemplo, no definas un control dándole un número aleatorio como 062491 o algo así. Escribe:
#define IDR_THEMENU 100 #define ID_FILE_EXIT 200 #define IDD_SIMPLECONTROL 300 #define ID_HELLO 400
-
Guarda este archivo como resource.h ¿Recuerdas que pusimos "#include "resource.h""? Bien, por esto es que lo hicimos. Necesitábamos asignar valores.
-
Regresa al código, nuestro SimpleProg.c o como sea que lo hayas nombrado. Escribe:
int WINAPI WinMain ( HINSTANCE hInstance , HINSTANCE hPrevInstance , LPSTR lpCmdLine , int nCmdShow ){ return DialogBox ( hInstance , MAKEINTRESOURCE ( IDD_SIMPLECONTROL ), NULL , SimpleProc );}
-
No te preocupes demasiado por todas las cosas técnicas que ves aquí. Sólo debes saber que esta parte devuelve el diálogo a nuestro procedimiento de manejo de mensaje llamado SimpleProc.
-
Escribe:BOOL CALLBACK SimpleProc(HWND hWndDlg, UINT Message, WPARAM wParam, LPARAM lParam){switch(Message){case WM_INITDIALOG:return TRUE;case WM_COMMAND:switch ( LOWORD (wParam) ) {case ID_HELLO:MessageBox(NULL,"Hey", "Hola!" , MB_OK)break; case ID_FILE_EXIT:EndDialog(hWndDlg, 0);break;}break;case WM_CLOSE:EndDialog(hWndDlg, 0); break; default: return FALSE;}return TRUE;}
-
Esta parte maneja los mensajes del diálogo. Por ejemplo, en el caso de ID_HELLO (nuestro botón), creamos una caja de mensaje que diga hola. También en el caso en el que vamos a Archivo y Salir, cerramos la ventana en el caso ID_FILE_EXIT.
-
Asegúrate de que tu SimpleProc salga antes que la parte de int WINAPI WINMAIN. Esto es importante si quieres que el programa funcione.
-
¡Presiona F9 para compilar y ejecutar tu programa!Anuncio
Consejos
- Si te pierdes, existen muchos tutoriales disponibles en internet.
- Si te frustras en algún punto, tómate un recreo y regresa.
- Éste es un tutorial para principiantes, por lo que muchas de sus partes no están explicadas. Incluso aunque sea un tutorial para principiantes, es recomendable que tengas ALGUNA experiencia en el mundo de la programación (por ejemplo, comprender las declaraciones de conmutación, if-else, etc.)
Anuncio
Advertencias
- Aprender Win32 no es una tarea fácil. Necesitas concentrarte en ello. Definitivamente no es para personas débiles de voluntad.
- La numeración de las líneas en este tutorial distorsionan de alguna manera el código fuente.
Anuncio
Anuncio