Primeros Pasos

Antes de empezar es importante tener un ligera idea de como funciona windows. Doy por supuesto que se tiene un conocimiento medio de windows a nivel de usuario, y una mínima agilidad moviendose por la ventanas de windows, que sabes abrir, cerrar archivos, manejarte por los menús de las aplicaciones, etc.

Windows gestiona sus recursos (ratón, pantalla, impresora, etc) por medio de mensajes. Por ejemplo, cuando mueves el ratón, o pulsas un botón de este, windows genera un mensaje avisando que se ha movido el ratón, o que se ha pulsado un botón, etc. Cuando se genera el mensaje es reponsabilidad de la aplicación que hacer con él. Así podemos ignorarlo, o realizar una acción con el mensaje.

También las aplicaciones cuando requieren un servicio de windows, también generan sus mensajes. Por ejemplo cuando cierras un programa has de indicar a windows que el programa se cierra, para que ya no "cuente con él" en su gestión del sistema.

Quizas estes pensando que es un lio gestionar los mensajes de windows, además si te paras a pensarlo si por cada acción del usuario se genera un mensaje, sumados a los que genere windows por otras causas, pues esto puede ser más laborioso que las pirámides. De hecho los programadores de C++ para windows tiene experiencia en ello, ya que tienen que gestionar los mensajes de windows.

¿Y en delphi?, ¿A caso no trabaja en windows?. Pues Delphi no es una excepción, pero él se ocupa del trabajo sucio. Vamos hacer un ejemplo para que te des cuenta del trabajo sucío que hace delphi para nosotros.

Pantalla principal del Delphi

Abre el delphi, y selecciona New Application dentro del menú File si por casualidad sale un cuadro de dialogo indicando si deseas guardar los cambios, indicale que no. Tenemos delante las ventanas de trabajo de Delphi, si no las conoces te recomiendo que las explores sin miedo. Más adelante hablaré de alguna de ellas. En el centro de la pantalla, más o menos, tienes una ventana que se llama Form1, es una ventana como todas en windows, pero tiene la peculiaridad de tener unos puntos pintados dentro de ella, es el grid, te contaré su utilidad. Ahora sin hacer nada pulsa la tecla F9 o el botón verde que tiene el simbolo del play de los reproductores de casettes, y el programa se compilará y se ejecutará

¿El programa? si, no has leido mal. Es muy sencillo, cuando creas una aplicación en Delphi, este internamente ya ha escrito todo el código necesario para crear la ventana y notificarselo a windows. Ahora juguetea con la ventana, maximizala, cambia su tamaño, etc. Cuando te aburras cierra la ventana en botón que pone a tu disposición windows en toda ventana. Si te tengo que explicar como hacerlo creo que te has equivocado de página en la red, deberias ir a una que tenga un cursillo básico sobre windows.

Quizas te preguntes de donde ha salido esa ventana, pues es la misma que tenias delante con esos puntitos que antes llame grib. El grib sirve para situar los controles sobre la ventana principal, de tal manera que usando el grid como referencia puedas alinear unos con otros o calcular su tamaño. Vamos a verlo en un ejemplo. Observa que la pantalla principal tiene una zona con etiquetas que ponen standard, additional, win95, etc. Estas etiquetas o pestañas seleccionan un conjunto de controles, como te podras imaginar la pestaña standard muestra los controles más comunes. Pues ahí selecciona el control que tiene un botón pintado dentro de su interior y pone ok. Si tienes dudas para un momento el puntero del ratón sobre un control, y delphi amablemente te mostrara su nombre. Ahora una vez seleccionado el control, observa como esta hundido, pulsa sobre el formulario principal.

Boton sobre el formulario

Mágia potagía, un boton ha aparecido en tu formulario. Observa los cuadrados negros que lo rodean. Si tienes algo de experiencia manejando imagenes te habrás dado cuenta para lo que sirven. Si te situas sobre uno de ellos verás como cambia el cursos del ratón, y si pulsas el botón del ratón y no lo sueltas a la vez que mueves el ratón veras como puedes cambiar su tamaño. De la misma manera si arrastras el botón, verás como se puede desplazar y llevarlo a otro lado. Un cosa si desas borrarlo simplemente seleccionalo y pulsa la tecla suprimir de tu teclado.

Prueba a ejecutar el programa, observa como el botón es funcional por si mismo, pulsalo y observa. Funciona como un botón de windows, pero no hace nada. Eso es porque no le hemos indicado como debe reaccionar a los mensaje que se genera cuando pulsamos sobre él. Una aclaración, cuando se produce un mensaje este genera un evento (de ahora en adelante me olvidaré de los mensajes y trabajaré con su consecuencia, los eventos; que para eso estamos en un sistema de desarrollo visual), que es donde debemos poner nuestro código. Ahora sal de nuestro programa cerrando la ventana, ya estamos de vuelta en el delphi.

Inspector de objetos

Observa detenidamente la imagen que esta a la izquieda de este parrafo. La ventana se llama inspector de objetos y será un gran aliado en el desarrollo de tus programas. Esta ventana varia su contenido segun el control que seleciones, si alguno esta tapado por otro control, o simplemente prefieres otro método para localizarlo, puedes hacerlo en la lista desplegable que ha en la parte superior de la ventana. La función de esta página es mostrar los propiedades del control, asi como los eventos a los que responde, para ver los eventos pulsa en la pestaña events. Fijate en la propiedad caption, en ella puedes poner el texto que mostrar el botón. Hay otra propiedad interesante que es name en la cual puedes indicar el nombre del control con el que será conocido por delphi. Por defecto le llama botton1 y si pones otro botón le llamará igual pero con un dos al final para diferenciarlo. Yo personalmente no suelo cambiarselo, pero sobre gustos no hay nada escrito, y te recomiendo que no lo hagas, si sigues este curso, para que cuando yo haga referencia a un control sepas de cual estoy hablando. Pon en la propiedad caption del botón el texto siguiente: &Salir, ahora haz doble click sobre el boton, y aparece una ventana que es un procesador de texto, es el editor de código donde se escribe el código fuente. Aunque delphi hace gran parte del trabajo algo de código tendrás que escribir, no pensarias que te ibas a pasar la vida agarrado al ratón.

Fijate que el cursor esta situado entre las palabras Begin end; y encima de hay una linea que dice una cosa como esta:procedure TForm1.Button2Click(Sender: TObject);

La primera linea es la declaración del procedimiento que se ejecutará cuando realizes click sobre el boton. Las palabrasBegin end; indican al compilador donde empieza y termina el procedmiento. Pon entre estas palabras lo siguiente: close;

Fijate que todas las instrucciones en delphi acaban en un punto y coma, hay alguna excepción que confirma la regla que ya comentaré segun surja. Ahora ejecuta el programa y pulsa el boton, el programa acaba inmediatamente. Es muy sencillo de entender. Al pulsar sobre el botón se produce el evento click (observa lo que pone la sección de eventos del boton en el inspecto de objetos; hace referencia al procediemiento donde acabas de escribir la palabra close) y se ejecutan las instrucciones que allí haya.

Aunque te parezca increible has hecho un programa que funciona en windows, y con mínimo esfuerzo. Para acabar, y siguiendo la tradición de los cursos de C, vamos a poner en nuestro programa la clásica frase de "hola mundo" pon un control TLabel, es ese que tiene una gran A. Escribe en su propiedad caption en texto que te indique antes, y ejecuta el programa.