Aprendiendo BORLAND Delphi. Marta Sananes Universidad de Los Andes, Venezuela. Junio 2002.

Programa HolaCons
 
Este ejemplo muestra la forma más sencilla de programar en el ambiente Delphi para crear aplicaciones que se comunican con los usuarios únicamente en modo "Consola", es decir, sin interfaces gráficas diseñadas sino mediante la interfaz estandard de comandos MSDOS de Windows. El texto del programa en lenguaje ObjectPascal (OP) aparece a la izquierda con fondo gris pizarra, a la derecha con fondo verde, hay notas explicativas.

Con este modo "Consola" de comunicación, Delphi proporciona la manera más rápida para lograr que aplicaciones desarrolladas en lenguaje TurboPascal para el sistema operativo DOS, puedan adaptarse para ambientes Windows.

En general TurboPascal es compatible con el lenguaje ObjectPascal incluido en Delphi, salvo las diferencias que el compilador señala. Por supuesto, ObjectPascal es un Pascal Orientado a Objetos (OO) mucho más enriquecido.
 

program HolaCons;
{Debe compilarse con:
  Project/Options/Linker/Generate
  Console Application}
begin
  writeln('Hola público !!!');
  readln;
end.
 
Para preparar este programa: 

En Delphi 5 y 6: Seleccione la opción File/New y luego seleccione el ícono de Console Application; asigne HolaCons como nombre al proyecto. 

En Delphi 4:
1. Haga visible el archivo del proyecto (.dpr
2. Elimine líneas, dejando sólo las de program, 
   begin y end.
3. Guarde el proyecto con la opcion
   Save Project As, asigne HolaCons como nombre 
   al proyecto, no guarde la Unit. 
4. Fije la opcion de Generar Aplicación de Consola, 
   tal como dice el comentario. O ponga después de
   la línea program una con la directiva: 
   {$APPTYPE CONSOLE}

Programa HolaDial
 

Este ejemplo muestra la forma más simple de programar en el ambiente Delphi para crear aplicaciones que se comunican con los usuarios mediante interfaces gráficas, usando formas de diálogos de estilos predefinidos contenidas en la Delphi-Unit Dialogs. El texto del programa en lenguaje ObjectPascal (OP) aparece a la izquierda con fondo gris pizarra, a la derecha con fondo verde, hay notas explicativas.
program HolaDial;
uses Dialogs;

begin
  ShowMessage('Hola público !!!');
end.

Para preparar este programa: 
1. Proceda igual que en el caso anterior del 
   Programa HolaCons, pero asignando el nombre 
   HolaDial.
2.También hay que agregar la línea con uses Dialogs
  para que el compilador pueda incluir los 
  procedimientos contenidos en la Unit Dialogs.

Programa Hola

El siguiente ejemplo es ya una aplicación que se comunica con los usuarios mediante una ventana o Forma de interfaz gráfica. Para Delphi es un proyecto construido en forma visual en su ambiente de desarrollo.
 
Nota Importante: Al comenzar un proyecto nuevo, lo primero que debe hacer es guardar el proyecto con la selección de menú File/Save Project As.. Los diálogos que Delphi muestra a continuación le permiten asignar los nombres deseados a la Forma principal y a la Unit asociada (archivos de extensión .dfm y .pas respectivamente) así como al Proyecto (archivo de extensión .dpr).

La construcción de un Proyecto (Project) con interfaz gráfica (GUI) comienza siempre con la construcción de la Forma. Delphi va generando los archivos que conforman el Proyecto. Después el programador va agregando código de programación OP a los procedimientos de atención de los Eventos de los usuarios, según el plan de la aplicación. Puede agregar sus propias declaraciones y procedimientos, incluyendo nuevas Clases con sus métodos. En una aplicación compleja puede agregar más Formas. Por cada Forma se genera una Unit  (archivo o módulo OP con declaraciones y código de programación). También puede agregar Units sin formas asociadas.

Se muestra el contenido de los tres archivos que conforman este proyecto: El primero es el archivo de extensión .dpr (Delphi PRoject), que es el archivo raíz del proyecto, escrito en lenguaje ObjectPascal.

El segundo es la única Unit de este proyecto, de extensión .pas que contiene la programación correspondiente al manejo de la Forma de interfaz de usuario del proyecto, también en lenguaje ObjectPascal. El tercero, de extensión .dfm (Delphi ForM), es parte de la visualización en modo texto de la Forma diseñada por el programador como interfaz de usuario. Este archivo contiene las declaraciones correspondientes al diseño de la Forma; es generado por Delphi transcribiendo la construcción que hace el usuario en forma visual. No hace falta que el programador vea este archivo ni debe modificar manualmente el texto, Delphi se encarga de su actualización cada vez que visualmente se modifique la apariencia o el contenido de la Forma asociada, ya sea por acciones directas sobre la Forma o modificando propiedades con el Object Inspector. El texto del programa en lenguaje ObjectPascal (OP) aparece a la izquierda con fondo gris pizarra, a la derecha con fondo verde, hay notas explicativas.
En los archivos de programa (.dpr y .pas), las líneas que son generadas automáticamente por Delphi están en color amarillo; en blanco sólo las que el programador tuvo que agregar. 

Hola.dpr
program Hola;

uses
  Forms,
  UHola in 'UHola.pas' {MiForma};

{$R *.RES}

begin
  Application.Initialize;
  Application.CreateForm(TMiForma, MiForma);
  Application.Run;
end.

Para proyectos diseñados con formas de interfaz 
gráfica para usuarios, Delphi genera el archivo 
de extensión .dpr. En la sección uses coloca los 
nombres y las ubicaciones de todas las Units 
incorporadas al proyecto, además de la referencia
a la Delphi-Unit  Forms, que contiene la Clase 
TForm, clase primitiva de todas las formas.

UHola.pas
unit UHola; Unit preparada usando la programación visual de Delphi, que genera la declaración de la forma y los esqueletos de los métodos. El progrmador completa y agrega codificación en ObjectPascal.
interface Comienzo de bloque de declaraciones.
uses
 Windows, Messages, SysUtils,Classes,
 Graphics,Forms, Dialogs, StdCtrls, ExtCtrls;
Delphi-Units que contienen Clases de la jerarquía de Clases disponibles en Delphi.
type
  TMiForma = class(TForm)
    Letrero: TLabel;
    Boton: TButton;
    Image1: TImage;
    procedure QueAparezca(Sender: TObject);
  private    { Private declarations }
  public     { Public declarations }
 end;
Delphi genera las declaraciones de los controles y componentes colocados por el programador en la forma y registra en el archivo de la forma (UHola.dfm en este caso) las propiedades asignadas con el ObjectInspector.
var
    MiForma: TMiForma;
implementation
{$R *.DFM}
Delphi genera la declaración de la variable de tipo referencia a objeto de la clase TMiForma.
Comienzo de bloque de implementación de métodos de la clase definida.
procedure TMiForma.QueAparezca(Sender:TObject);
begin
  Boton.Visible:=False;
  Letrero.Visible:=True;
end;
Programacion del procedimiento de respuesta al evento OnClick en el componente de tipo TButton.

UHola.dfm
object MiForma: TMiForma 
  Left = 206 
  Top = 170 
  BorderStyle = bsSingle 
  BorderWidth = 3 
  Caption = 'Programa Hola'
  ClientHeight = 247 
  ClientWidth = 233 
  Color = clBlack 
  .............. Otras propiedades de la Forma
   object Letrero: TLabel
       Left = 0 
       Top = 184 
       Width = 233 
       Height = 65 
       Alignment = taCenter 
       AutoSize = False 
       Caption = 'Hola publico !!' 
       Color = clNavy 
 .............. Otras propiedades del Letrero
      Visible = False 
  end 
  object Image1: TImage 
      Left = 0 
      Top = 0 
      Width = 241 
      Height = 185
      Picture.Data = { 
............. Datos de la imagen, originalmente en 
              .\Archivos de Programas\Archivos comunes\ 
              Borland Shared\Images\Splash\16color\earth.bmp
    Transparent = True 
  end 
  object Boton: TButton 
      Left = 0 
      Top = 224 
      Width = 233 
      Height = 25 
      Caption = 'Presione aqui' 
      TabOrder = 0 
      OnClick = QueAparezca 
  end 
end 

El archivo de extensión .dfm corresponde a la definición de esta Forma. La Forma contiene un componente de tipo TLabel ,
un componente de tipo TImage y un componente de tipo TButton.