En este tema, aprenderemos a crear formularios y controles en Delphi utilizando la Biblioteca de Componentes Visuales (VCL). Los formularios y controles son elementos fundamentales en el desarrollo de aplicaciones de escritorio, ya que permiten la interacción del usuario con la aplicación.
Objetivos
- Comprender la estructura de un formulario en Delphi.
- Aprender a agregar y configurar controles en un formulario.
- Manejar eventos básicos de los controles.
- Estructura de un Formulario en Delphi
Un formulario en Delphi es una ventana que contiene varios controles (botones, etiquetas, cuadros de texto, etc.). Cada formulario es una instancia de la clase TForm
.
Ejemplo de un Formulario Básico
unit Unit1; interface uses System.SysUtils, System.Classes, Vcl.Controls, Vcl.Forms, Vcl.StdCtrls; type TForm1 = class(TForm) Button1: TButton; Label1: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption := '¡Hola, mundo!'; end; end.
Explicación del Código
- unit Unit1;: Define el nombre del módulo.
- interface: Sección donde se declaran las clases y métodos públicos.
- uses: Lista de unidades que se utilizan en el formulario.
- type TForm1 = class(TForm): Define una clase
TForm1
que hereda deTForm
. - Button1Click: Procedimiento que se ejecuta cuando se hace clic en
Button1
. - implementation: Sección donde se implementan los métodos declarados en la sección
interface
. - {$R *.dfm}: Vincula el archivo de recursos (DFM) con el código fuente.
- Agregar y Configurar Controles
Agregar Controles
Para agregar controles a un formulario, puedes arrastrarlos desde la paleta de componentes en el IDE de Delphi y soltarlos en el formulario.
Configurar Propiedades de los Controles
Cada control tiene varias propiedades que puedes configurar. Por ejemplo, para un botón (TButton
), puedes configurar propiedades como Caption
, Name
, Enabled
, etc.
Ejemplo de Configuración de Propiedades
procedure TForm1.FormCreate(Sender: TObject); begin Button1.Caption := 'Click Me'; Button1.Left := 50; Button1.Top := 50; Label1.Caption := 'Esperando...'; Label1.Left := 50; Label1.Top := 100; end;
- Manejo de Eventos
Los eventos son acciones que ocurren en respuesta a la interacción del usuario, como hacer clic en un botón o mover el ratón.
Ejemplo de Manejo de Eventos
En el ejemplo anterior, el evento Button1Click
se maneja con el siguiente procedimiento:
Este procedimiento cambia el texto de Label1
cuando se hace clic en Button1
.
Ejercicio Práctico
Ejercicio 1: Crear un Formulario con Varios Controles
- Crea un nuevo proyecto en Delphi.
- Agrega un formulario y coloca los siguientes controles:
- Un botón (
TButton
) con el texto "Saludar". - Una etiqueta (
TLabel
) con el texto "Esperando...". - Un cuadro de texto (
TEdit
) donde el usuario pueda ingresar su nombre.
- Un botón (
- Configura las propiedades de los controles para que se vean bien en el formulario.
- Escribe el código para que cuando el usuario haga clic en el botón, la etiqueta muestre "Hola, [nombre]!", donde [nombre] es el texto ingresado en el cuadro de texto.
Solución
unit Unit1; interface uses System.SysUtils, System.Classes, Vcl.Controls, Vcl.Forms, Vcl.StdCtrls; type TForm1 = class(TForm) Button1: TButton; Label1: TLabel; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption := 'Hola, ' + Edit1.Text + '!'; end; end.
Explicación de la Solución
- Edit1.Text: Obtiene el texto ingresado en el cuadro de texto
Edit1
. - Label1.Caption := 'Hola, ' + Edit1.Text + '!';: Cambia el texto de
Label1
para saludar al usuario.
Conclusión
En esta sección, hemos aprendido a crear formularios y agregar controles en Delphi. También hemos visto cómo configurar las propiedades de los controles y manejar eventos básicos. Estos conceptos son fundamentales para el desarrollo de aplicaciones de escritorio en Delphi.
En la próxima sección, exploraremos la programación orientada a eventos en mayor detalle, lo que nos permitirá crear aplicaciones más interactivas y dinámicas.
Curso de Programación en Delphi/Object Pascal
Módulo 1: Introducción a Delphi/Object Pascal
- Introducción a Delphi y Object Pascal
- Configuración del Entorno de Desarrollo
- Primera Aplicación en Delphi
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
Módulo 2: Estructuras de Control y Procedimientos
- Sentencias Condicionales
- Bucles e Iteración
- Procedimientos y Funciones
- Ámbito y Ciclo de Vida de las Variables
- Manejo de Errores y Depuración
Módulo 3: Trabajando con Datos
- Arreglos y Cadenas
- Registros y Conjuntos
- Tipos Enumerados y Subrangos
- Manejo de Archivos
- Acceso a Bases de Datos
Módulo 4: Programación Orientada a Objetos
- Introducción a la POO
- Clases y Objetos
- Herencia y Polimorfismo
- Interfaces y Clases Abstractas
- Manejo de Excepciones en POO
Módulo 5: Características Avanzadas de Delphi
- Genéricos y Colecciones
- Multihilo y Programación Paralela
- Desarrollo Basado en Componentes
- Biblioteca de Tiempo de Ejecución de Delphi (RTL)
- Técnicas Avanzadas de Depuración
Módulo 6: Desarrollo de GUI con VCL y FMX
- Introducción a VCL
- Creación de Formularios y Controles
- Programación Orientada a Eventos
- Introducción a FireMonkey (FMX)
- Desarrollo Multiplataforma con FMX
Módulo 7: Desarrollo Web y Móvil
- Desarrollo Web con Delphi
- Servicios RESTful
- Desarrollo Móvil con Delphi
- Despliegue de Aplicaciones Móviles
- Integración con Servicios Web
Módulo 8: Mejores Prácticas y Patrones de Diseño
- Organización del Código y Documentación
- Patrones de Diseño en Delphi
- Técnicas de Refactorización
- Pruebas Unitarias y Desarrollo Basado en Pruebas
- Optimización del Rendimiento