Hasta ahora solo hemos desarrollado aplicaciones en modo texto para conocer y aprender la sintaxis del lenguaje Object Pascal y practicar el desarrollo de algoritmos.
Delphi es famoso en el sistema operativo Windows por la facilidad de implementar interfaces visuales utilizando la librería VCL (Visual Component Library)
La VCL nos facilita de sobremanera el desarrollo de interfaces visuales arrastrando objetos (botones, cuadros de entrada de dato, cuadros de selección etc.) a una ventana.
Nos permite modificar propiedades de esos objetos y ver su resultado inmediatamente sin tener que compilar la aplicación (cambiar color, texto, fuentes etc. de botones y otros controles visuales)
Además de configurar sus propiedades podemos asociar código a distintos eventos de los controles visuales, por ejemplo que debe ejecutarse al ser presionado un botón.
Actualmente hay otra librería en Delphi (FireMonkey) para crear interfaces visuales multiplataforma (Windows, Mac, Android), pero si estamos desarrollando una aplicación que solo se ejecutará en el entorno de Windows la más adecuada y optimizada es la VCL.
Veamos ahora como crear un proyecto que utilice la VCL para crear su interfaz visual.
Desde el menú de opciones seleccionamos File -> New -> Other
Seleccionamos un proyecto: "VCL Forms Application":
Ya tenemos el proyecto creado y como vemos el entorno de Delphi nos muestra una "VENTANA" en la parte central donde dispondremos todos los controles visuales de nuestra aplicación:
Además del menú de opciones y botones de acceso rápido de Delphi:
hay cinco ventanas fundamentales con distintos objetivos:
Cuando se crea un proyecto con Delphi utilizando la VCL se agrega el primer objeto (Form1) en forma automática generando los archivos necesarios.
Seleccionemos desde la ventana "Project Manager" el archivo Unit1.pas
Nos aparece en lugar del "Formulario central" la unidad en pascal que se asocia a dicho formulario. Ya veremos con más detenimiento el código generado:
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs; type TForm1 = class(TForm) private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} end.
Como vemos se declara una clase llamada TForm1 que hereda de la clase TForm. Su interior está vacía. En la sección de definición de variables se define un objeto llamado Form1 de la clase declarada previamente TForm1.
Si queremos ver donde se crea el objeto Form1 debemos seleccionar desde el menú de opciones Project -> View Source:
Ahora podemos ver donde se crea el objeto Form1 en el archivo principal de nuestro proyecto:
program Proyecto143; uses Vcl.Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.res} begin Application.Initialize; Application.MainFormOnTaskbar := True; Application.CreateForm(TForm1, Form1); Application.Run; end.
En la unidad Vcl.Forms se crea un objeto llamado Application y luego mediante la llamada al método CreateForm le pasamos la referencia de la clase y la variable que debe crear:
Application.CreateForm(TForm1, Form1);
Normalmente no modificaremos este archivo y nos concentraremos en la Unit1.pas donde implementaremos la lógica de nuestra aplicación.
En forma rápida podemos crear un proyecto en Delphi utilizando la librería VCL: