Sunteți pe pagina 1din 20

Lazarus Tutorial/es

From Free Pascal wiki


Deutsch (de) | English (en) | Espaol (es) | Suomi (fi) | Franais (fr) | Magyar (hu) | Italiano (it) | (ja) | (ko) | (mk) | Nederlands (nl) | Portugus
(pt) | (ru) | Slovenina (sk) | Shqip (sq) | () (zh_CN) | () (zh_TW)
Estos son los primeros pasos de una tutora de Lazarus. Por favor, aade aqu tus experiencias.
Contents
1 Resumen
2 T primer programa con Lazarus!
2.1 Comenzando
2.2 Segunda sesin
3 El Entorno integrado de desarrollo (IDE) de Lazarus
3.1 Ventana principal
3.2 Otras ventanas del IDE
3.3 El Men Principal
3.3.1 El submen Archivo
3.3.2 El submen Editar
3.3.3 El submen Buscar
3.3.4 El submen Ver
3.3.5 El submen Proyecto
3.3.6 El submen Ejecutar
3.3.7 El submen Componentes (Paquete en la v0.9.26.2)
3.3.8 El submenu Herramientas
3.3.9 El submen Entorno
3.3.10 El submen Ventanas
3.3.11 El submen Ayuda
3.4 Panel de botones rpidos
4 La Paleta de Componentes
4.1 Cmo utilizar la paleta
4.2 Pestaas de la Paleta de Componentes
4.2.1 * Standard
4.2.2 * Additional
4.2.3 * Common Controls
4.2.4 * Dialogs
4.2.5 * Misc
4.2.6 * Data Controls
4.2.7 * Data Access
4.2.8 * System
4.2.9 * SynEdit
4.2.10 * IPro
4.2.11 * SQLdb
4.2.12 * RTTI
5 Como utilizar los controles estndar, comunes y extendidos
5.1 Nota: todo lo que se dice respecto de modificar las propiedades de los objetos mediante cdigo, tiene efecto nicamente en
tiempo de ejecucin, por lo que los efectos de los valores modificados no pueden observarse en el Inspector de Objetos.
(iskraelectrica)
6 Cmo utilizar mens en nuestros programas
7 El Depurador
8 Los archivos de Lazarus
8.1 Herramientas del IDE de Lazarus
9 Colaboradores iniciales y cambios
Resumen
Lazarus es una herramienta de desarrollo libre y de cdigo abierto para el compilador Free Pascal (Object Pascal), que a su vez lo es tambin. El
IDE de Lazarus (Captura de pantalla (http://wiki.lazarus.freepascal.org/images/3/31/Lazarus_IDE_general.png) ) es un entorno de programacin
estable y con abundantes caractersticas para crear aplicaciones tanto con interfaz grficas como de consola. Actualmente funciona n sistemas
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
1 de 20 09/06/2014 09:24 p.m.
operativos Linux, FreeBSD y Windows 32 bits, y proporciona un editor de cdigo fuente personalizable y un entorno visual para crear formularios,
junto con un generador de paquetes, un depurador y una completa integracin del GUI con el compilador FreePascal.
T primer programa con Lazarus!
Quiz sea recomendable que aprendas antes un poco de Pascal. En Wikilibros tienes este completo curso de Programacin en Pascal
(http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Pascal) que puedes seguir antes o al mismo tiempo que este.
Comenzando
Descarga, instala (Instalacin de Lazarus), con lo que tambin instalars el compilador FreePascal y ejecuta Lazarus.
Notas: en Linux Ubuntu, al menos, el comando para iniciar a Lazarus desde consola es "startlazarus". Si se instal desde un paquete Debian, habr
una entrada de men Lazarus en el men Aplicacioesn / Programacin.
En Debian y Ubuntu el archivo ejecutable principal y el paquete se denominan "lazarus-ide" porque el paquete "tct" ya viene con una utilidad
llamada "Lazarus".
Aparecern varias ventanas en el escritorio: el men principal arriba, el Inspector de Objetos a la izquierda, el Editor de Cdigo Fuente ocupando
la mayor parte del escritorio, y un formulario Form1, preparado sobre el Editor de Cdigo fuente.
En la ventana superior, por debajo de la lnea del men, hay una fila de pestaas. Si la pestaa Standard no est seleccionada, seleccinala
pulsando sobre ella con el ratn. Despus busca el icono Button (un rectngulo con OK) y seleccinalo con el ratn, despus pulsa sobre la ventana
Form1, en alguna parte de la misma. Aparecer un rectngulo sombreado etiquetado Button1. Selecciona de nuevo el icono Button en la pestaa
estndar, y pulsa sobre Form1 en otra parte del formulario: aparecer otro rectngulo etiquetado Button2.
Ahora selecciona el botn Button1 con el ratn. El Inspector de Objetos mostrar las propiedades del objeto Button1. Entre las primeras hay una
propiedad llamada 'Caption', que muestra el valor 'Button1'. Entra en la casilla, y cambia 'Button1' por 'Pulsa'. Si puls la tecla INTRO o cambi a
otra casilla, ver como el rotulo del botn en Form1 cambia a 'Pulsa'. Ahora haz selecciona la pestaa Eventos del Inspector de Objetos, para ver los
eventos de que dispone el botn. stos son, por ejemplo, OnClick, OnEnter, OnExit, etc. Selecciona la casilla que hay a la derecha de OnClick: la
casilla se transforma en desplegable y tambin aparece un botn con unos puntos suspensivos. Al pulsar este, aparecer el cursor en el Editor de
Cdigo Fuente dentro ya de la plantilla del procedimiento del evento:
procedure TForm1.Button1Click(Sender: TObject);
begin
{ahora escribe:} Button1.caption := 'Pulsa otra vez';
{el editor siempre termina el procedimiento con}
end;
Si pulsas F12 aparecer la ventana del formulario, al pulsar otra vez F12 volvers al Editor de Cdigo.
Ahora edita las propiedades de Button2: pulsa sobre Button2 para mostrar sus propiedades en el Inspector de Objetos. Cambia su propiedad
Caption por 'Cerrar' en lugar de Button2. Ahora selecciona la pestaa Eventos, y haz doble pulsacinen la casilla de OnClicK, cmo antes, aparecer
el cursor en el Editor de Cdigo Fuente dentro ya de la plantilla del procedimiento del evento:
procedure TForm1.Button2Click(Sender: TObject);
begin
{ahora escriba:} Close;
{el editor siempre termina el procedimiento con}
end;
Pulsa F12 para ver la ventana Form1.
Es conveniente guardar ahora tu trabajo, seleccionando 'Proyecto > Guardar proyecto' (que al no haber guardado nunca funciona exactamente
igual que 'Guardar como...'. Elije una ubicacin y pon nombre a la unidad que contiene el formulario (unit1.pas, por defecto) y al proyecto
(proyect1.lpi, por defecto). Lazarus guarda automticamente una copia del proyecto en el directorio backup con el estado del proyecto antes de
compilar las ltimas modificaciones. Es importante guardar por tu cuenta los estados 'estables' del proyecto.
Ests listo ahora para compilar. La forma ms simple de hacerlo pulsar la flecha verde que hay en el panel a la izquierda de la barra de pestaas,
que equivale a la opcin de men 'Ejecutar -> Ejecutar F9', o ms rpido an: pulsar simplemente F9 . Con esto compilaremos el cdigo y despus
(si todo es correcto) enlazar y ejecutar el programa.
Durante el proceso aparece una ventana con mensajes de texto, informando sobre el proceso de compilacin y enlazado, y finalmente la aparecer
la ventana de Form1 sin la rejilla de puntos; sto indica que es una verdadera ventana de la aplicacin, ya dispuesta para que acte sobre ella,
pulsando alguno de los botones que has creado o los que por defecto tiene la ventana, en la barra del ttulo.
Pulsa el botn etiquetado 'Pulsa'. Vers que cambia a 'Pulsa otra vez'. Si lo pulsas otra vez, seguir diciendo 'Pulse otra vez'!!
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
2 de 20 09/06/2014 09:24 p.m.
Ahora hazlo con el botn marcado 'Cerrar'. La ventana se cierra, terminando la ejecucin del programa. Retornamos a Lazarus, con el formulario
form1 para poder continuar el proceso de edicin del mismo y del cdigo asociado.
Segunda sesin
Reabre el proyecto guardado antes, si es que los has cerrado.
Selecciona Button1 del Form1 En la ventana Form1.
Selecciona la pestaa 'Eventos' en el Inspector de Objetos, Selecciona la casilla de OnClick, pulsa sobre los puntos suspensivos, para situarte el
punto apropiado en el Editor de Cdigo Fuente.
Edita el cdigo para poner lo siguiente:
procedure TForm1.Button1Click(Sender: TObject);
{Utilizaremos la propiedad Tag del botn, asignndole el valor 0 o 1}
begin
if Button1.tag =0 then
begin
Button1.caption := 'Pulsa otra vez';
Button1.tag := 1
end
else
begin
Button1.caption := 'Pulsa';
Button1.tag := 0
end
end;
Guarda el trabajo, compila y ejecuta. El botn de la izquierda alternar entre los dos mensajes al pulsarlo. El resto corre de tu cuenta!
Si prefieres escribir programas en PASCAL para consola o basados en texto (por ejemplo si est siguiendo un curso de programacin en PASCAL
bsico, o necesitas escribir programas para usar en tratamiento por lotes o para programar el sistema), puedes tambin utilizar Lazarus para editar,
compilar y ejecutar estos programas. Es un entorno ideal para el desarrollo de PASCAL. Ver PASCAL en modo consola.
El Entorno integrado de desarrollo (IDE) de Lazarus
Al ejecutar por primera vez Lazarus aparecen en el escritorio varias ventanas desconectadas separadas o 'flotantes'.
Ventana principal
La primera, en la parte superior derecha del escritorio, con el rtulo Editor vXX.XX.XX de Lazarus - project1 (que posteriormente reflejar el
nombre que pongas al proyecto). sta es la ventana principal que controla tu proyecto, y contiene el Men Principal, la Paleta de Componentes y el
panel de Botones Rpidos.
Una lnea por debajo de la barra de ttulo est el Men Principal con las habituales opciones Archivo, Editar, Buscar, Ver, Ventanas y Ayuda, y
con las opciones que son especficas de Lazarus. Debajo, a la izquierda hay un sistema de Botones Rpidos, que te llevan gilmente a opciones del
Men Principal, y a la derecha est la Paleta de Componentes.
Otras ventanas del IDE
Debajo de la ventana del editor de Lazarus aparecer a la izquierda la ventana Inspector de Objetos, y la del Editor de Cdigo Fuente a la
derecha. Puede haber otra ventana ms pequea, etiquetada, en principio, Form1 (http://lazarus-ccr.sourceforge.net/kbdata/blankform.jpg) ,
sobre la ventana del Editor de Cdigo. Si no es visible inmediatamente, puede hacerse aparecer presionando la tecla F12 , que alterna entre la vista
del Editor de Cdigo y la vista del formulario Form1. La ventana del formulario es en la que constituir el interfaz grfico de tu aplicacin, mientras
que el Editor de Cdigo es la ventana que muestra el cdigo de PASCAL asociado a la aplicacin que est creando. El Inspector de Objetos se
describe con detalle ms adelante, junto con la Paleta de Componentes. Cuando comience un nuevo proyecto (o cuando ejecute Lazarus por
primera vez) se construir un formulario predefinido, que se compone de una caja en la que hay una rejilla de puntos para ayudarle a colocar los
diversos componentes del formulario, y una barra a lo largo de la parte superior que contiene los botones habituales Minimizar, Maximizar y
Cerrar. Si usted pulsa con el ratn en cualquier lugar de la caja, ver las propiedades de este formulario mostradas en el Inspector de Objetos en el
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
3 de 20 09/06/2014 09:24 p.m.
lado izquierdo del escritorio.
Otras ventanas que pueden llegar a ser
visibles durante su trabajo: Inspector
del Proyecto, que contiene los detalles
de los archivos incluidos en su proyecto,
y permite que agregar archivos o
eliminar archivos de su proyecto; la
ventana Mensajes, que muestra
mensajes del compilador, errores o
informes sobre el progreso de su
proyecto; si Lazarus fuese ejecutado
desde una ventana de terminal, el
terminal original seguira siendo visible
y los mensajes detallados del
compilador tambin se mostraran all.
Por ltimo, tambin puede ver una
ventana de mensajes en la parte inferior
de la pantalla: sta es utilizada por
Lazarus para mostrar los resultados al
programador, por ejemplo, al compilar
un programa.
El Men Principal
La lnea del men principal contiene las siguientes entradas: Archivo Editar Buscar Ver Proyecto Ejecutar Componentes (Paquete en la versin
0.9.26.2) Herramientas Entorno Ventanas Ayuda
Como de costumbre, las opciones se pueden seleccionar colocando el cursor del ratn sobre la opcin del men y pulsando con el botn izquierdo,
o pulsando Alt + F en el teclado (suponiendo que la ventana del Men Principal tenga el foco: si no lo tiene, pulse Tab varias veces para
completar un ciclo del foco a travs de varias ventanas hasta que la ventana deseada tenga su barra de ttulo resaltada).
El submen Archivo
Nueva Unidad: Crea un nuevo archivo Unidad (en cdigo fuente Pascal).
Nuevo Formulario: Crea un nuevo Formulario: tanto la ventana visual en pantalla como el archivo asociado en cdigo fuente Pascal.
Nuevo ...: Muestra ventana emergente con un men (captura de pantalla (http://wiki.lazarus.freepascal.org/images
/e/ef/Lazarus_Ventana_Nuevo.png) ) con los distintos tipos de proyectos y archivos nuevos que se pueden crear.
Abrir: Muestra un cuadro de dilogo emergente para permitirle recorrer el sistema de archivos y elegir un archivo existente para abrirlo..
Deshacer: Anula los cambios de edicin y devuelve el archivo a su estado original.
Guardar: Guarda el archivo actual, usando su nombre original. Si no tiene nombre, el sistema se lo pregunta (igual que Guardar como)
Guardar como: Le permite escoger una carpeta y un nombre para guardar el archivo actual.
Cerrar: Cierra el archivo actual, preguntando si quiere guardar todos los cambios del editor.
Cerrar todos los archivos del editor: Cierra todos los archivos abiertos actualmente en el editor. Pregunta si se guardan los cambios.
Limpiar directorio: Muestra un dilogo con varios filtros editables para borrar archivos del directorio actual. til para borrar archivos .bak y
restos de antiguos proyectos en Delphi.
Salir: Sale de Lazarus, despus de preguntar si se guardan los archivos editados.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
4 de 20 09/06/2014 09:24 p.m.
El submen Editar
Deshacer: Deshace el ltimo cambio, dejando el Editor como estaba antes de la ltima accin.
Rehacer: Rehace la ltima accin que fue anulada por Deshacer.
Cortar: Borra el texto u otros objetos seleccionados y los coloca en el portapapeles.
Copiar: Hace una copia del texto seleccionado, dejando el original en su sitio y colocando una
copia en el portapapeles.
Pegar: Sita el contenido del portapapeles en la posicin del cursor. Si el texto ha sido
seleccionado en la posicin del cursor, el contenido del portapapeles sustituir al texto
seleccionado.
Sangrar seleccin: Mueve el texto seleccionado hacia la derecha segn lo indicado en Entorno
-> Opciones del Editor -> General -> Sangrar bloque. Esta caracterstica es til para formatear su
cdigo fuente Pascal para mostrar la estructura del bloque subyacente.
Desangrar seleccin: Elimina un nivel de sangrado, moviendo el texto hacia la izquierda segn lo
indicado en Sangrar bloque.
Encerrar seleccin: Muestra un men emergente con varias opciones para, lgicamente, encerrar
el texto seleccionado (begin ... end; try ... except; try ... finally; repeat ... until; { ... }; etc).
Seleccin en maysculas: Convierte el texto seleccionado en maysculas.
Seleccin en minsculas: Convierte el texto seleccionado en minsculas.
Tabulaciones a espacios en seleccin: Convierta cualquier tabulacin en el texto seleccionado
segn el nmero de espacios especificado en Entorno -> Opciones del Editor -> General ->
Anchura de tabulacin. No se fija el nmero de espacios cuantitativamente, sino el nmero que se
necesita para rellenar el ancho restante de tabulacin.
Romper lneas seleccionadas: Si algunas lneas en el texto seleccionado o el nmero
especificado en Entorno -> Opciones del Editor -> Pantalla -> Margen derecho, tienen ms de 80
caracteres, la lnea se rompe en una palabra lmite y contina en la lnea siguiente.
Comentar seleccin: Convierte el texto seleccionado en comentarios, insertando // en cada lnea.
Descomentar seleccin: Borra las marcas de comentario.
Ordenar seleccin: Ordena lneas (o palabras o prrafos) alphabeticamente; en orden ascendente
o descendente, puede ser sensible o insensible a maysculas/minusculas. En mitad del cdigo
fuente del programa, claro, se convierte en insensible, pero si tiene una lista que necesita ordenar
lo puede hacer con esto.
Seleccionar: Permite seleccionar bloques de texto. Las opciones son Seleccionar todo,
Seleccionar tira, seleccionar prrafo o lnea, etc.
Insertar desde mapa de caracteres: Permite insertar smbolos que no estn en el teclado tales
como caracteres acentuados, seleccionndolos desde un mapa de caracteres emergente.
Insertar texto: Muestra un men emergente que permite insertar texto normal, tal como palabras clave de CVS (Author, Date, Header, etc) o
avisos de GPL, usuario o fecha y hora actual.
Completar cdigo: Completa el cdigo donde est el cursor. Es sensible al contexto y le ahorra mucho tiempo. Por ejemplo: completa clases,
aadiendo variables privadas, las propiedades Get y Set acceden a mtodos y aaden partes principales de mtodos. Asignando variables (por
ejemplo i:=3;) aade las declaraciones de las variables. En los procedimientos definidos en adelante aade las partes principales de los
mtodos. Al asignar eventos (OnClick:=) aade la definicin del mtodo y su parte principal. Vase Herramientas del IDE de Lazarus.
Extraer procedimiento: Usa el texto seleccionado (una declaracin o varias) para construir un nuevo procedimiento.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
5 de 20 09/06/2014 09:24 p.m.
El submen Buscar
Buscar: Parecido a lo que existe en casi todos los editores de texto: aparece un cuadro
de dilogo emergente que permite introducir una cadena de texto a buscar, con opciones
como sensible a maysculas/minsculas, palabras completas, origen, alcance y direccin
de bsqueda.
Buscar Siguiente, Buscar Anterior: Busca otra vez segn la entrada de texto previa,
en la direccin especificada.
Buscar en archivos: Busca el texto en archivos: cuadro de dilogo emergente con las
opciones todos los archivos abiertos, todos los archivos en el proyecto, o todos los
directorios; se pueden utilizar caracteres comodn para seleccionar archivos de un tipo
determinado.
Reemplazar: Parecido a Buscar; muestra un cuadro de dilogo emergente con espacio
para escribir una cadena de texto y sustituir texto y opciones de sensibilidad a
maysculas/minsculas, direccin, etc.
Bsqueda incremental: Busca la cadena de texto mientras estamos introduciendo la
cadena a buscar. Por ejemplo: despus de elegir "Bsqueda incremental" si teclea "l" la
primera "l" se resaltar. Si despus presiona "a", el editor buscar la siguiente "la" y as
sucesivamente.
Ir a lnea: Mueve el cursor de edicin a la lnea especificada de un archivo.
Saltar atrs: Regresa en el archivo a el anterior marcador (es necesario haber utilizado
Aadir punto de salto al historial. Se mover a marcadores en otros archivos abiertos
en el Editor.
Saltar adelante: Se mueve hacia delante al prximo marcador.
Aadir punto de salto al historial: Aade marcadores o puntos de salto al archivo.
Ver historial de salto: Muestra la lista de marcadores del archivo: Todavia no llevado a
cabo.
Buscar otro final del bloque de cdigo: Situados en un begin, busca el correspondiente
end o viceversa.
Buscar comienzo del bloque de cdigo: Se mueve al begin de un procedimiento o
funcin en la que est situado el cursor.
Buscar declaracin desde el cursor: Buscar el lugar en el que se ha declarado el
identificador seleccionado. Esto puede ser en el mismo archivo u otro ya abierto en el
Editor; si el archivo no est abierto, se abrir (cuando se declara un procedimiento o una
funcin, por ejemplo, en classesh.inc , se abrir en el Editor).
Abrir nombre de archivo a cursor: Abre el archivo cuyo nombre se ha seleccionado con el cursor. Es til para examinar archivos Include o
archivos que contienen otras Unidades usadas en el proyecto.
Ir a directiva de inclusin: Si el cursor est situado en un archivo que est Incluido en otro archivo, va al lugar en el otro archivo que llam el
archivo Include.
El submen Ver
Controla la visualizacin de varias ventanas y paneles en la pantalla.
Inspector de Objectos: La ventana que normalmente ocupa el lado izquierdo del escritorio y muestra las propiedades del formulario que
aparece en l. Si hace clic con el ratn en cualquier componente de un formulario se mostrarn los detalles de ese componente en el Inspector
de Objetos. En la parte superior hay un panel que muestra la estructura en rbol del proyecto actual y en el que se pueden seleccionar los
componentes del formulario: esto tambin har que se muestren en el Inspector de Objetos los correspondientes detalles. El panel principal
inferior tiene dos pestaas que permiten seleccionar Propiedades o Eventos. Si se selecciona Propiedades se muestran caractersticas como
nombre, color, etiqueta, tipo de letra, tamao, etc.: hay dos columnas, la izquierda muestra la propiedad y la derecha el valor asociado a esa
propiedad. Si se selecciona Eventos muestra dos columnas: la izquierda lista los posibles eventos tales como MouseClick o KeyDown
asociados con ese componente, y la izquierda la accin que resulta de ese evento. Si ho hay una accin definida, haciendo clic en la casilla
apropiada o en el botn hace que aparezca el Editor de Cdigo, con el cursor ya colocado en una plantilla de declaracin de procedimiento,
esperando que tecleemos el cdigo que defina el evento.
Editor del cdigo fuente: La ventana principal donde se edita el cdigo fuente. Su funcionamiento es muy parecido a la mayora de los
editores de texto grficos, as que el ratn puede mover el cursor sobre el texto mostrado, y al hacer clic con el botn izquierdo mientras
arrastramos se seleccionar y sombrear texto. Al pulsar con el botn derecho se muestra un men emergente, pero si est familiarizado con
Windows, o editores de Gnome o KDE, encontrar que el men emergente NO tiene las funciones habituales de edicin: Cortar, Copiar y
Pegar, sino que incluye opciones como Buscar Declaracin o Abrir archivo en cursor. La parte superior del Editor del cdigo fuente tiene
varias pestaas, que corresponden a los archivos que estn abiertos para el proyecto actual; pulsando sobre cualquiera se ver el archivo, y
podr moverse fcilmente de un archivo a otro, copiando y pegando entre archivos y realizando la mayora de las funciones normales de
edicin. El Editor del cdigo fuente resalta texto en color, con colores diferentes para signos de puntuacin, comentarios, constantes, etc.
Tambin mantiene el nivel de sangrado de lnea en lnea, mientras no lo cambie. La funcionalidad y apariencia del Editor del cdigo fuente son
muy configurables desde el Men Principal seleccionando Entorno -> Opciones del editor y seleccionando despus una de las pestaas del
cuadro de dilogo emergente.
Explorador de cdigo: Una ventana emergente (http://wiki.lazarus.freepascal.org/images/a/a9/lazarus.IDE.ExploradorCodigo.png) .
normalmente situada a la derecha del escritorio que muestra, en forma de rbol, la estructura del cdigo en la unidad o programa actual.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
6 de 20 09/06/2014 09:24 p.m.
Habitualmente se abre con el nombre de unidad y ramas para las secciones Interface e
Implementation, pero pulsando en el recuadro situado a la izquierda de
cualquier rama abrir sus sub-ramas o ramitas, con ms y ms detalles hasta constantes
individuales, se mostrarn tipos y variables, as como procedimientos y declaraciones de
funcin. Si cambia el archivo mostrado en la ventana principal del Editor del cdigo fuente,
necesitar pulsar el botn Refrescar del Explorador de Cdigo para mostrar la estructura del
nuevo archivo.
Unidades...: Abre una ventana emergente de dilogo con una lista de los archivos de unidades
en el proyecto actual. Haciendo clic con el ratn sobre un nombre de archivo se selecciona ese
archivo; pulse en Abrir para mostrar ese archivo en el Editor del cdigo fuente. Si marca el
recuadro Multi podr seleccionar varios archivos a la vez, y todos ellos se abrirn en el Editor
del cdigo fuente (pero slo se mostrar uno cada vez). Este Men Opcin se parece bastante a
Proyecto -> Opciones del Inspector del Proyecto, pero slo muestra la lista de archivos
unidades y permite que sean abiertos.
Formularios...: Abre una ventana de dilogo emergente con una lista de los formularios del
proyecto actual, y permite seleccionar uno o ms para que sean mostrados.
Ver dependencias de la unidad: Abre una ventana de dilogo
(http://wiki.lazarus.freepascal.org/images/6/65/lazarus.IDE.Ver.Dependencias.Unidad.png)
emergente que muestra, como un rbol, la estructura de dependencias del archivo unidad
actualmente abierto. La mayora de los archivos listados como dependencias tendrn sus
propios recuadros , lo que permite que se exploren las dependencias de los
archivos individuales, a menudo de una manera muy recursiva.
Commutar Ver formulario / unidad: Commuta entre el Editor del cdigo y el formulario
actual situado en la capa superior del escritorio, y le da el foco. Si el Editor del cdigo tiene el
foco, puede editar el cdigo fuente; si se le da el foco al formulario podr manipular los
componentes en el escritorio y cambiar el aspecto del formulario. El modo ms sencillo de
alternar entre el Editor y el formulario es usar la tecla F12 , pero se consigue el mismo
resultado seleccionando esta opcin en el Men Principal.
Mensajes: Una ventana que muestra los mensajes del compilador, el avance de una
compilacin con xito o lista los errores encontrados.
Buscar resultados: Una ventana que muestra los resultados de una bsqueda en archivos.
Ventanas de depuracin: Abre un men emergente con varias opciones para operar y configurar el depurador. Ms abajo se describe el
Depurador
El submen Proyecto
Nuevo proyecto: Crea un nuevo proyecto. Aparece una ventana de dilogo emergente
que ofrece la posibilidad de elegir entre varios tipos de proyectos.
Nuevo proyecto desde archivo: Aparece una ventana de dilogo de navegacin, que
permite seleccionar un archivo desde el cual crear un nuevo proyecto.
Abrir proyecto Abre un proyecto que ya haba sido creado y guardado. Aparece un
dilogo de navegacin con una lista de archivos con Informacin del Proyecto Lazarus
(Lazarus Project Information (.lpi)) desde el que se puede elegir un proyecto.
Abrir proyecto reciente: Muestra una lista emergente de los proyectos recientes en
los que ha estado trabajando y permite seleccionar uno de ellos.
Guardar proyecto: Parecido a Archivo -> Guardar: se guardan todos los archivos del
proyecto actual; si no fueron previamente guardados, se nos pregunta el nombre- como
en Guardar Proyecto como...
Guardar proyecto como...: Pide un nombre para guardar el proyecto. Se ofrece por
defecto el nombre Project1.lpi, pero debera elegir su propio nombre. Lazarus no
permitir usar el mismo nombre para el archivo proyecto y el archivo unidad (vase
ms abajo).
Publicar proyecto: Crea una copia de todo el proyecto. Si desea mandrselo a alguien
slo la configuracin de las fuentes y el compilador de su cdigo, esta funcin es su
amiga. Una carpeta normal de proyecto contiene mucha informacin. La mayoria no
es necesario hacerla pblica: el archivo .lpi contiene informacin de la sesin (como
posicin de insercin de texto y marcadores de unidades cercanas) y la carpeta del
proyecto contiene muchos archivos .ppu, .o y el ejecutable. Para crear un archivo lpi
solamente con la informacin base y slo las fuentes, en todas las subcarpetas use
"Publicar proyecto". En el dilogo puede establecer los filtros excluir e incluir y con la orden despus puede condensar la salida a un nico
archivo. Vase Herramientas del IDE de Lazarus
Inspector del proyecto: Abre un dilogo con aspecto de rbol que muestra los archivos del proyecto actual. Permite aadir, borrar y abrir los
archivos que se seleccionen, o cambiar las opciones del proyecto.
Opciones del proyecto...: Abre una ventana de dilogo con varias pestaas para establecer opciones para Aplicacin (ttulo, archivo de
salida), Formularios (que permite seleccionar, de entre los formularios disponibles, los que se crearan automticamente al arrancar la
aplicacin) y Miscelnea (especifica si la informacin del editor debera guardarse para archivos cerrados, o slo para archivos del proyecto).
NO ESTOY REALMENTE SEGURO DE LO QUE SIGNIFICA ESTO: AYUDA!! --> en la versin 0.9.24 estas casillas figuran en la
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
7 de 20 09/06/2014 09:24 p.m.
pestaa Sesin y lo que viene a decir es si se salvan cambios realizados en archivos abiertos en el editor, pero que no pertenecen al proyecto,
normalmente unidades que figuran en la clusula uses y otros que nosotros hayamos abierto, pero no aadido al proyecto. Lo de los archivos
cerrados si que es un misterio.
Opciones del compilador...: (Se traslad a aqu recientemente desde el Men Ejecutar). Abre una ventana multipagina con pestaas para
configurar el compilador. Las pestaas son Rutas para definir trayectorias de bsqueda para unidades, archivos include, libreras, etc., tambin
permite elegir un tipo de interfaz para los formularios (gtk, gnome, win32); Procesando para elegir las reglas para procesar programas fuente,
Cdigo para hacer que los programas sean mas rpidos y pequeos, elegir procesador objetivo, tipos de comprobaciones, tamao de la pila,
etc; Enlazando permite elegir como usar la depuracin, libreras estticas o dinmicas, y si se pasarn las opciones a travs del enlazador;
Mensajes definir que tipo de mensajes se generarn si hay errores; Otro para decidir si usar el archivo de configuracin por defecto (fpc.cfg)
o algn otro archivo; Heredado muestra un diagrama con estructura de rbol para indicar cmo han sido heredadas las opciones desde
unidades ya incorporadas; Compilacin permite definir comandos que se ejecutarn antes o despus de lanzar el compilador y puede permitir
usar archivos Make.
Aadir archivo de editor al proyecto: Aade al proyecto el archivo que se est editando en este momento.
Eliminar del proyecto: Aparece un men emergente con los archivos que se pueden quitar del proyecto.
Ver fuente: Independientemente del archivo que est editando, lo lleva de regreso al archivo del programa principal (.lpr), o al archivo
principal .pas si no hay .lpr.
Ver lista Para-Hacer: Abre un cuadro de dilogo con una lista de tareas pendientes asociadas a este proyecto. Listar cualquier comentario
de tareas pendientes de su proyecto (lneas que comienzan por //TODO), y cualesquiera otras en las unidades Lazarus que utiliz. Necesita
Refrescar las tareas pendientes en el dilogo (usando el botn con el smbolo de una flecha en la barra de herramientas) para que aparezcan las
nuevas tareas pendientes. La primera columna de la lista de tareas pendientes contiene nmeros que ha destinado a sus comentarios ToDo; un
simple //TODO har que aparezca un cero, pero un comentario //TODO999 (por ejemplo) pondr el nmero 999 en la primera columna.
Recuerde que no puede haber espacios antes de //TODO y que los comentarios ToDo aadidos despus de la ltima vez que guard no se
mostrarn!
El submen Ejecutar
Construir: hace que Lazarus construya (es decir compile) los archivos del proyecto que han
sufrido cambios desde la ltima construccin.
Construir todo: Construye todos los archivos del proyecto, hayan sufrido cambios o no.
Abortar construccin: Para el proceso de construccin una vez iniciado - si ha recordado que
hizo algo mal y quiere parar la construccin , o el proceso parece que se alarga mucho y
evidentemente, hay algn error.
Ejecutar: Este es el modo normal para lanzar el compilador y, si la compilacin tiene xito,
empezar la ejecucin de la aplicacin. Lo que relamente ocurre es que Lazarus guarda una
copia de sus archivos, despus inicia el compilador y el enlazador, luego comienza la ejecucin
del programa binario enlazado final.
Pausar: Suspende la ejecucin del programa. Esto le puede permitir inspeccionar cualquier
salida que haya sido generada; la ejecucin se puede continuar seleccionando Ejecutar otra
vez.
Paso a paso por instrucciones: Utilizado junto con el depurador, produce la ejecucin del
programa paso a paso hasta un punto sealado del cdigo fuente.
Paso a paso por funciones: Produce la ejecucin paso a paso hasta la declaracin sealada,
despus salta la declaracin y contina la ejecucin a velocidad normal. til para intentar aislar
una declaracin que provoca un error lgico.
Ejecutar hasta cursor: Provoca la ejecucin a velocidad normal (es decir, NO una declaracin
cada vez) hasta la declaracin donde est el cursor; despus se para. Contine la ejecucin a
velocidad normal seleccionando Ejecutar
Detener: Para la ejecucin del programa. No se puede continuar seleccionando Ejecutar; esto
har que comience el programa otra vez desde el principio (recompilando si es necesario).
Parmetros de ejecucin: Abre una ventana emergente multipgina que permite opciones de
consola y parmetros que se le pasarn al programa para que sean ejecutados; permite la
seleccin de monitor para ejecutar el programa (por ejemplo, en Linux se puede utilizar un
terminal X remoto); algunas variables de entorno pueden ser invalidadas.
Una aplicacin muy importante de este submen es activar una ventana de terminal en la que
se muestra una consola Pascal de entrada/salida. Si est desarrollando un programa Pascal en modo consola (por ejemplo, que no use el
interfaz grfico de usuario (GUI) con sus formularios, botones y recuadros) debera marcar la casilla "Usar lanzando aplicacin". La primera
vez que haga esto e intente Compilar/Ejecutar, probablemente obtendr un desagradable mensaje que diga:
"xterm: Can't execvp /usr/share/lazarus//tools/runwait.sh: Permission denied".
Si ocurre esto, necesita cambiar los permisos del archivo apropiado (por ejemplo usando chmod +x archivo, o usando la utilidad de Windows
para cambiar permisos); puede que tenga que hacer esto como administrador. Despus, cada vez que ejecute el programa, aparecer una
ventana de terminal con todo su texto de entrada/salida (readln, writeln, etc).
Despus de terminar la ejecucin de su programa, aparecer un mensaje "Presione intro" en la pantalla. As, cualquier salida que produzca su
programa permanecer en la pantalla hasta que haya podido leerla; despus de que presione 'intro' se cerrar la ventana de consola.
Vase este tutorial sobre programacin Pascal en modo consola.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
8 de 20 09/06/2014 09:24 p.m.
Reiniciar depurador: Devuelve el depurador a su estado original, con lo que se borran los puntos de interrupcin y los valores de las
variables.
Construir archivo: Compila (construye) slo el archivo que est abierto en este momento en el editor.
Ejecutar archivo: Compila, enlaza y ejecuta slo el archivo abierto en este momento.
Configurar Construir+Ejecutar archivo: Abre una ventana multipgina con opciones que permiten construir nicamente este archivo
cuando se selecciona Construir proyecto, permite seleccionar la carpeta de trabajo, el uso de varias macros, etc. Despus construye y ejecuta
el archivo.
Estas tres ltimas opciones le permiten abrir (y mantener) un proyecto de prueba. Use Archivo -> Abrir, para abrir un archivo .lpr, presione
cancelar en el dilogo siguiente para abrir este archivo como un archivo "fuente normal".
El submen Componentes (Paquete en la v0.9.26.2)
Abrir paquete cargado...: Muestra una Lista de los paquetes instalados
(http://wiki.lazarus.freepascal.org/images/c/cd/Lazarus_Abrir_Paquete_Cargado.png) ,
dndonos la posibilidad de abrir uno de ellos , y en la ventana (http://wiki.lazarus.freepascal.org
/images/4/43/Lazarus_Abrir_Paquete.png) que sale configurarlo, compilarlo o editarlo.
Abrir archivo de paquete (lpk)...: Abre el paquete seleccionado y en la ventana
(http://wiki.lazarus.freepascal.org/images/4/43/Lazarus_Abrir_Paquete.png) que sale
configurarlo, compilarlo o editarlo.
Abrir paquete de unidad actual: Abre la ventana (http://wiki.lazarus.freepascal.org/images
/4/43/Lazarus_Abrir_Paquete.png) de configuracin del paquete al que pertenece la unidad
activa en el editor de cdigo.
Abrir paquete reciente...: Abre un paquete que fue abierto recientemente.
Aadir unidad activa al paquete: Sita el archivo unidad (que se encuentra seleccionado en
este momento en el editor) dentro de un paquete.
Grfico de paquete...: Muestra un grfico (http://wiki.lazarus.freepascal.org/images
/e/eb/Lazarus_Grafico_Paquete.png) con las relaciones entre los paquetes que se estn usando
(si no ests usando ningn otro paquete, se mostrarn el paquete Lazarus y el FCL y el LCL).
Configurar paquetes instalados...: Muestra los paquetes disponibles y los instalados. Permite aadir y suprimir paquetes.
El submenu Herramientas
Configurar herramientas personalizadas: Permite al usuario aadir varias
herramientas externas (generalmente macros) al juego de herramientas.
Comprobacin rpida de la sintaxis: Realiza una comprobacin rpida de la
sintaxis en su archivo fuente sin compilar nada realmente. El paso esencial en el
desarrollo de programas largos y complicados, cuando no quiere perder tiempo
compilando si el cdigo est equivocado.
Adivinar bloque sin cerrar: til si tiene una estructura de bloques anidados y
ha dejado un 'end' en algn lugar.
Adivinar IFDEF/ENDIF perdido: De utilidad si hay una estructura de macro
anidada o compleja y cree que ha dejado una directiva ENDIF.
Hacer ResourceString: Convierte la cadena seleccionada en un ResourceString
situndola en una seccin resourcestrings, que debe existir en alguna unidad del
proyecto. Una ventaja de ResourceStrings es que pueden ser modificadas sin
necesidad de compilar el proyecto de nuevo! con las herramientas adecuadas.
Diff: Permite comparar dos archivos (generalmente dos versiones del mismo
archivo) para encontrar diferencias. Opciones para ignorar espacios en blanco al
principio o al final de las lneas o variaciones del terminador delnea: CR+LF
frente a LF. til para comprobar si ha habido cambios desde la ltima
actualizacin de CVS, etc.
Opciones de las plantillas del proyecto: Este elemento es aadido por el
paquete Project Templates.
Verificar archivo LFM en editor: Permite inspeccionar el archivo LFM que
contiene las especificaciones que describen el formulario actual.
Convertir unidad de Delphi a unidad de Lazarus: Ayuda a convertir
aplicaciones Delphi en Lazarus; realiza los cambios necesarios en el archivo
fuente. Ver Lazarus para usuarios de Delphi y Gua de conversin de cdigo.
Convertir proyecto de Delphi a proyecto de Lazarus: Ayuda a convertir proyectos Delphi en proyectos Lazarus; realiza los cambios
necesarios en los archivos que componen el proyecto. Ver Lazarus para usuarios de Delphi y Gua de conversin de cdigo.
Convertir paquete de Delphi a paquete de Lazarus: Ayuda a convertir paquetes Delphi en paquetes Lazarus; realiza los cambios necesarios
en los archivos que componen el paquete. Ver Lazarus para usuarios de Delphi y Gua de conversin de cdigo.
Convertir archivo DFM a LFM: Para llevar de Delphi a Lazarus: convierte los archivos de descripcin del formulario de Delphi a Lazarus.
Vase Lazarus para usuarios de Delphi y Gua de conversin de cdigo.
Construir Lazarus: Ejecuta una reconstruccin de Lazarus desde los archivos ms recientemente descargados o actualizados va CVS.
Aadir o eliminar los paquetes sgn hallamos indicado en la ventana configurar paquetes instalados. Pulse el botn y sintese a mirar lo que
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
9 de 20 09/06/2014 09:24 p.m.
ocurre! (siga el proceso en la ventana Mensajes).
Configurar "Construir Lazarus": Permite al usuario determinar qu partes de Lazarus sern reconstruidas, y cmo. Por ejemplo, puede
seleccionar que slo se reconstruya la LCL, o todo excepto los ejemplos; puede seleccionar qu interfaz de LCL usar (por ejemplo qu
conjunto de interfaces) , y puede seleccionar el sistema operativo y especificar una carpeta diferente.
El submen Entorno
Opciones del Entorno: exhibe una ventana de pginas con mltiples pestaas para
Archivo - permite que el usuario especifique la ruta para la carpeta por
defecto, el compilador, la carpeta de fuentes y la carpeta temporal para la
compilacin;
Escritorio - opciones para el idioma, guardar automticamente, guardar
propiedades del escritorio, sugerencias para paleta de componentes y botones
rpidos;
Ventanas, permite la especificacin del tamao y del comportamiento de
varias ventanas;
Editor de formulario - elegir los colores para editar formularios;
Inspector de objetos - elegir el color y la altura de elementos;
Copia de seguridad - especificar cmo hacer copias de seguridad de los archivos cuando editamos;
Nombrando - especificar qu extensin utilizar al nombrar archivos de PASCAL ('pp' o 'pas'), si se guardarn los archivos con nombres
en minsculas, si se borrarn o renombrarn automticamente.
Opciones del Editor: ventana de pginas mltiples, con pestaas para
General - determina comportamientos como sangrado automtico, resaltado de parntesis, arrastrar y soltar, desplazamiento por el
texto, resaltado de sintaxis, mostrar sugerencias, tamao de sangrado de bloques y las pestaas, lmite de deshacer;
Visualizar - opciones para mostrar nmeros de lnea, la presencia de canales, el tamao y el tipo de fuente para el editor, y contiene un
panel de vista previa que muestra los colores de varias caractersticas de la sintaxis tales como comentarios, carpetas, puntuacin,
errores y puntos de ruptura;
Accesos rpidos - para seleccionar entre el esquema de Lazarus o el de Turbo Pascal;
Color - permite elegir el esquema de color para las caractersticas del texto, para varios lenguajes tales como Objet PASCAL, C++, Perl,
HTML, XML y scripts de shell. Muestra el panel de vista previa otra vez (para cualquier lenguaje seleccionado);
Herramientas de cdigo - permite seleccionar caractersticas como la terminacin del identificador, consejos, especificacin del
nombre del archivo plantilla, plantillas especficas para la terminacin del cdigo.
Opciones de depuracin: ventana de pginas mltiples con pestaas para
General - eligir depurador: ninguno, depurador de GNU (gdb) o gdb a travs de SSH, especificar las rutas de bsqueda para las
depuraciones, y las opciones especficas para la depuracin elegida;
Registro de eventos - especificar si borrar el registro y ejecutar, y qu mensajes exhibir;
Excepciones del lenguaje - seleccionar qu excepciones se pueden ignorar;
Excepciones del sitema operativo - permite que el usuario agregue ciertas seales que se apliquen al sistema operativo actual (no
funciona todava).
Opciones de CodeTools: ventana de pginas mltiples, pestaas para
General - permite la entrada de las rutas de bsqueda de cdigo fuente adicionales, especificar mtodo de salto;
Creacin de cdigo - se determina si el cdigo creado est agregado antes o despus de cierto punto;
Palabras - se determina si las palabras claves de Pascal se deben introducir en maysculas o minsculas, o como palabras todas en
maysculas;
Separacin de lnea - establece las reglas sobre dnde se permite partir las lneas (antes o despus de la puntuacin, despus de las
palabras claves, etc);
Espacio - decidir si un espacio debe ser agregado automticamente antes o despus de ciertos rasgos sintcticos tales como palabras
claves o signos de puntuacin.
Definir editor de CodeTools: permite insertar plantillas de Free Pascal, Lazarus, Delphi o Kylix.
Escanear de nuevo el directorio de fuentes de FPC: busca por la carpeta otra vez. Lazarus utiliza las fuentes del FPC para generar eventos
correctos y cuando busca declaraciones. Si cambia la carpeta en las opciones del entorno, esa carpeta se vuelve a explorar, para cerciorarse de
que Lazarus utiliza la versin que se almacen en esa localizacin. Pero si esa carpeta ha cambiado sin que Lazarus lo advierta, entonces
puede obtener algunos errores al disear formularios o hacer "Encontrar declaracin". Si obtiene tal error, puede hacer dos cosas:
Comprobar la carpeta de fuentes del FPC configurada en la opcin Entorno. 1.
Volver a explorar la carpeta de fuentes del FPC. 2.
El submen Ventanas
Contiene una lista de las ventanas abiertas y por tanto disponibles, como Editor de cdigo fuente,
Inspector de Objetos ,Inspector del proyecto, Mensajes y las de los formularios. Seleccionando el
nombre de una de las ventanas la pondr en primer plano y le dar el foco.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
10 de 20 09/06/2014 09:24 p.m.
El submen Ayuda
Tiene tres opciones:
Ayuda en lnea abre una ventana del navegador que contiene una imagen de un guepardo corriendo y
varios enlaces a Lazarus, FreePascal y el sitio web del WiKi.
Configurar Ayuda abre un men emergente con opciones para seleccionar visores y bases de datos para
leer informacin de ayuda. Esta opcin permite especificar cualquiera de los documentos en lnea del sitio
web de Lazarus-CCR, algunos otros sitios que contienen documentos, o un almacenamiento local para la
documentacin (esta ser la opcin por defecto, cuando est terminado completamente el sistema de
ayuda).
En la actualidad, al situar el cursor en la ventana del Editor sobre cualquier palabra clave de la Librera de Componentes de FreePascal (FCL) o la
Librera de tiempo de ejecucin (RTL) (pero no la Librera de Componentes de Lazarus, LCL) y presionar F1 se abrir a la definicin apropiada en
el sitio web.
Hay otras opciones de ayuda para el usuario final fuera de lnea. Por ejemplo, si tienes una copia de Kylix, puede reutilizar los archivos de ayuda que
vienen con l, dentro del IDE de Lazarus. Ver la pgina Adding Kylix Help para ms detalles.
Acerca de Lazarus muestra un recuadro emergente con informacin sobre Lazarus, cmo la versin, los integrantes del equipo de desarrollo y
agradecimientos varios.
Cundo est finalizado, ser un completo servicio de ayuda en lnea, con informacin sobre sintaxis de Pascal, el uso del IDE, cmo usar,
modificar o crear componentes, y sugerencias sobre cmo realizar ciertas tareas. Esta parte de la seccin de Documentacin (lo que est leyendo
ahora mismo) representa el comienzo del proceso. Necesitamos contribuciones de cualquiera que se sienta capacitado: es muy fcil editar el
Wiki.
Panel de botones rpidos
Un pequeo panel de herramientas a la izquierda en la ventana principal, justo debajo del Men Principal y a la
izquierda de la Paleta de Componentes, contiene un conjunto de botones de acceso a las opciones de uso ms frecuente
del men principal:
Nueva unidad, Abrir, Recientes, Guardar, Guardar todo, Nuevo formulario,
Ver formulario/unidad (F12), Ver unidades, Ver formularios,
Ejecutar (F9) (compila, enlaza y ejecuta en modo depuracin), Detener, Paso a paso por instrucciones (F7), Paso a paso por
funciones (F8) (las cuatro ltimas son funciones del depurador).
La Paleta de Componentes
Una barra de herramientas con pestaas que muestra un gran nmero de iconos que representan los componentes ms utilizados para construir
formularios.
Cada pestaa hace que se muestre un conjunto diferente de iconos, que representa a un grupo funcional de componentes. El icono que est ms a
la izquierda en cada grupo es una flecha inclinada hacia la izquierda, llamada Herramienta de seleccin.
Si deja el cursor del ratn inmvil sobre cualquier icono de la Paleta de Componentes, sin pulsar sobre el icono, aparecer el rtulo de ese
componente. Advierta que cada rtulo empieza por 'T' - esto significa 'Tipo' o ms exactamente 'Clase' de un componente. Cuando selecciona un
componente para incluirlo en un formulario, la clase se aade a la seccin tipo de la parte interface de la unidad (normalmente como parte del
TForm1), y se aada una instancia de esa clase a la seccin var (normalmente como la variable Form1). Cualquier Mtodo que disee para que sea
usado por el formulario o sus componentes (por ejemplo, procedimientos o funciones) ser colocado en la parte implementation de la unidad.
Cmo utilizar la paleta
Para utilizar la paleta, debe haber un formulario abierto a la vista en el editor (si no hay uno, selecciona Archivo -> Nuevo formulario). Haz clic en
el icono de la pestaa correspondiente de la paleta para el componente que deseas utilizar y haz clic en el formulario, cerca de donde quieres que
aparezca el componente. Cuando el componente aparezca se puede seleccionar haciendo clic en l con el ratn. Una vez seleccionado en el
formulario, el objeto se encuentre seleccionado tambin en la ventana Inspector de Objetos, donde puedes editar sus propiedades y eventos.
Ajustes de la apariencia visual de un objeto pueden hacerse, ya sea mediante la alteracin de su representacin en el formulario usando el ratn, o
cambiando la propiedad correspondiente en el Editor de objetos para ese componente
Si instalas componentes adicionales, ya sean los que has escrito, o los vienen en un paquete de alguna otra fuente, los iconos correspondientes
aparecern en la paleta de componentes, en una de su pestaas o en una pestaa nueva adicional. Estos nuevos componentes se pueden seleccionar
y utilizar en sus formularios de la misma forma que los suministrados por defecto
En la lista que sigue de los componentes, encontrars vnculos a archivos que contienen descripciones de las unidades en que se encuentran. Si
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
11 de 20 09/06/2014 09:24 p.m.
deseas obtener informacin sobre las propiedades de un componente en particular, a menudo merece la pena mirar en la herencia de ese componente
e inspeccionar las propiedades del tipo base del que se deriva. Por ejemplo, para entender TMaskEdit tambin es til examinar TCustomMaskEdit.
Pestaas de la Paleta de Componentes
Los nombres de las pestaas son bastante descriptivos de su contenido. Las imgenes y los componentes reseados corresponden a los que vienen
por defecto con la Versin 0.9.24 de Lazarus:
* Standard (http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/index-4.html)
(Ver Pestaa Standard para la descripcin de los componentes)
Componentes utilizados con frecuencia: TMainMenu (http://lazarus-ccr.sourceforge.net/index.php?wiki=MenuUnit#TMainMenu) ,
TPopupMenu (http://lazarus-ccr.sourceforge.net/index.php?wiki=MenuUnit#TPopupMenu) , TButton (http://lazarus-ccr.sourceforge.net
/index.php?wiki=ButtonsTxt#TButton) , TLabel (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TLabel) , TEdit (http://lazarus-
ccr.sourceforge.net/index.php?wiki=StdCtrls#TEdit) , TMemo (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TMemo) ,
TToggleBox (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TToggleBox) , TCheckBox (http://lazarus-ccr.sourceforge.net
/index.php?wiki=StdCtrls#TCheckBox) , TRadioButton (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TRadioButton) ,
TListBox (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TListBox) , TComboBox (http://lazarus-ccr.sourceforge.net
/index.php?wiki=StdCtrls#TComboBox) , TScrollBar (http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TScrollBar) , TGroupBox
(http://lazarus-ccr.sourceforge.net/index.php?wiki=StdCtrls#TGroupBox) , TStaticText (http://lazarus-ccr.sourceforge.net
/index.php?wiki=StdCtrls#TStaticText) , TRadioGroup (http://lazarus-ccr.sourceforge.net/index.php?wiki=ExtCtrls#TRadioGroup) ,
TCheckGroup (http://lazarus-ccr.sourceforge.net/index.php?wiki=ExtCtrls#TCheckGroup) , TPanel (http://lazarus-ccr.sourceforge.net
/index.php?wiki=ExtCtrls#TPanel) , TActionList (http://lazarus-ccr.sourceforge.net/docs/lcl/actnlist/tactionlist.html)
* Additional (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/index-4.html)
(Ver Additional tab/es para la descripcin de los componentes)
Ms, componentes utilizados a menudo: TBitBtn (http://lazarus-ccr.sourceforge.net/docs/lcl/buttons/tbitbtn.html) , TSpeedButton
(http://lazarus-ccr.sourceforge.net/docs/lcl/buttons/tspeedbutton.html) , TStaticText (http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls
/tstatictext.html) , TImage (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/timage.html) , TShape (http://lazarus-ccr.sourceforge.net/docs/lcl
/extctrls/tshape.html) , TBevel (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tbevel.html) , TPaintBox (http://lazarus-ccr.sourceforge.net
/docs/lcl/extctrls/tpaintbox.html) , TNotebook (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tnotebook.html) , TLabeledEdit
(http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/tlabelededit.html) , TSplitter (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls
/tsplitter.html) , TTrayIcon (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/ttrayicon.html) , TMaskEdit (http://lazarus-ccr.sourceforge.net
/docs/lcl/maskedit/tmaskedit.html) , TCheckListBox (http://lazarus-ccr.sourceforge.net/docs/lcl/checklst/tchecklistbox.html) , TScrollBox
(http://lazarus-ccr.sourceforge.net/docs/lcl/forms/tscrollbox.html) , TApplicationProperties (http://lazarus-ccr.sourceforge.net/docs/lcl/forms
/tapplicationproperties.html) , TStringGrid (http://lazarus-ccr.sourceforge.net/docs/lcl/grids/tstringgrid.html) , TDrawGrid (http://lazarus-
ccr.sourceforge.net/docs/lcl/grids/tdrawgrid.html) , TPairSplitter (http://lazarus-ccr.sourceforge.net/docs/lcl/pairsplitter/tpairsplitter.html) ,
TColorBox (http://lazarus-ccr.sourceforge.net/docs/lcl/colorbox/tcolorbox.html) , TColorListBox (http://lazarus-ccr.sourceforge.net/docs/lcl
/colorbox/tcolorlistbox.html) , TChart (http://lazarus-ccr.sourceforge.net/docs/lcl/chart/index.html)
* Common Controls (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/index-4.html)
(Ver Common Controls tab/es para la descripcin de los componentes)
TTrackBar (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttrackbar.html) , TProgressBar (http://lazarus-ccr.sourceforge.net/docs/lcl
/comctrls/tprogressbar.html) , TTreeView (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttreeview.html) , TListView (http://lazarus-
ccr.sourceforge.net/docs/lcl/comctrls/tlistview.html) , TStatusBar (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tstatusbar.html) ,
TToolBar (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/ttoolbar.html) , TUpDown (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls
/tupdown.html) , TPageControl (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls/tpagecontrol.html) , TTabControl (http://lazarus-
ccr.sourceforge.net/docs/lcl/comctrls/ttabcontrol.html) , THeaderControl (http://lazarus-ccr.sourceforge.net/docs/lcl/comctrls
/theadercontrol.html) , TImageList (http://lazarus-ccr.sourceforge.net/docs/lcl/controls/timagelist.html) , TPopupNotifier (http://lazarus-
ccr.sourceforge.net/docs/lcl/popupnotifier/index.html)
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
12 de 20 09/06/2014 09:24 p.m.
* Dialogs (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/index-4.html)
(Ver Dialogs tab/es para la descripcin de los componentes)
TOpenDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/topendialog.html) , TSaveDialog (http://lazarus-ccr.sourceforge.net/docs/lcl
/dialogs/tsavedialog.html) , TSelectDirectoryDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tselectdirectorydialog.html) ,
TColorDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcolordialog.html) , TFontDialog (http://lazarus-ccr.sourceforge.net/docs/lcl
/dialogs/tfontdialog.html) , TFindDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tfinddialog.html) , TReplaceDialog (http://lazarus-
ccr.sourceforge.net/docs/lcl/dialogs/treplacedialog.html) , TOpenPictureDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs
/topenpicturedialog.html) , TSavePictureDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/tsavepicturedialog.html) , TCalendarDialog
(http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs/tcalendardialog.html) , TCalculatorDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/extdlgs
/tcalculatordialog.html) , TPrinterSetupDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintersetupdialog.html) ,
TPrintDialog (http://lazarus-ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintdialog.html) , TPageSetupDialog (http://lazarus-
ccr.sourceforge.net/docs/lcl/dialogs/tcustomprintersetupdialog.html)
Algunos procedimientos y funciones tiles de Dialogos no aparecen en la Paleta, pero se pueden utilizar fcilmente mediante llamadas directas
desde tu programa fuente.
Puede ver algunos buenos ejemplos de cmo usar los componentes en la subcarpeta $LazarusPath/lazarus/examples de su instalacin. Muchos
programas muestran cmo usar dilogos y otros componentes directamente sin usar el IDE y la paleta de componentes o tienen un archivo de
definicin de formularios separado: todos los componentes estn total y explcitamente definidos en el programa Pascal principal. Otros programas
de ejemplo hacen un uso pleno del IDE.
Si algunos ejemplos no funcionan bien: puede que necesite modificar rutas y permisos de archivos o carpetas. Si quiere compilar algn ejemplo,
compruebe que tiene permisos de lectura/escritura/ejecucin para los archivos y carpetas, o copie los archivos a una carpeta donde tenga los
permisos adecuados.
Intente ejecutar el programa 'testall' para ver un men de componentes disponibles junto con pequeos formularios ejemplo de prueba para la
mayora de ellos; despus mire el cdigo para descubrir como funcionan!
* Misc
TColorButton (http://lazarus-ccr.sourceforge.net/index.php?wiki=DialogsTxt) , TSpinEdit (http://lazarus-ccr.sourceforge.net/docs/lcl
/spin/tspinedit.html) , TFloatSpinEdit (http://lazarus-ccr.sourceforge.net/docs/lcl/spin/tfloatspinedit.html) , TArrow (http://lazarus-
ccr.sourceforge.net/docs/lcl/arrow/tarrow.html) , TCalendar (http://lazarus-ccr.sourceforge.net/docs/lcl/calendar/tcalendar.html) , TEditButton
(http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/teditbutton.html) , TFileNameEdit (http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn
/tfilenameedit.html) , TDirectoryEdit (http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tdirectoryedit.html) , TDateEdit (http://lazarus-
ccr.sourceforge.net/docs/lcl/editbtn/tdateedit.html) , TCalcEdit (http://lazarus-ccr.sourceforge.net/docs/lcl/editbtn/tcalcedit.html) ,
TFileListBox (http://lazarus-ccr.sourceforge.net/docs/lcl/filectrl/tfilelistbox.html) , TXMLPropStorage (http://lazarus-ccr.sourceforge.net
/docs/lcl/xmlpropstorage/txmlpropstorage.html) , TIniPropStorage (http://lazarus-ccr.sourceforge.net/docs/lcl/inipropstorage
/tinipropstorage.html) , TBarChart (http://lazarus-ccr.sourceforge.net/docs/lcl/chart/tbarchart.html) , TButtonPanel (http://lazarus-
ccr.sourceforge.net/docs/lcl/buttonpanel/tbuttonpanel.html) , TCustomShellTreeView, TIDEDialogLayoutStorage
* Data Controls (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/index-4.html)
Componentes de datos que son como los de los grupos Standard y Additional, pero aplicables a bases de datos: TDBNavigator
(http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbnavigator.html) , TDBText (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls
/tdbtext.html) , TDBEdit (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbedit.html) , TDBMemo (http://lazarus-ccr.sourceforge.net
/docs/lcl/dbctrls/tdbmemo.html) , TDBImage (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbimage.html) , TDBListBox (http://lazarus-
ccr.sourceforge.net/docs/lcl/dbctrls/tdblistbox.html) , TDBComboBox (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcombobox.html) ,
TDBCheckBox (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcheckbox.html) , TDBRadioGroup (http://lazarus-ccr.sourceforge.net
/docs/lcl/dbctrls/tdbradiogroup.html) , TDBCalendar (http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcalendar.html) , TDBGroupBox
(http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbgroupbox.html) , TDBGrid (http://lazarus-ccr.sourceforge.net/docs/lcl/dbgrids
/tdbgrid.html)
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
13 de 20 09/06/2014 09:24 p.m.
* Data Access
TDatasource, TMemDataset, TSdfDataSet, TFixedFormatDataSet, TDbf
* System
TTimer (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls/ttimer.html) , TIdleTimer (http://lazarus-ccr.sourceforge.net/docs/lcl/extctrls
/tidletimer.html) , TLazComponentQueue (http://lazarus-ccr.sourceforge.net/docs/lcl/lresources/tlazcomponentqueue.html) ,
THtmlHelpDatabase (http://lazarus-ccr.sourceforge.net/docs/lcl/lazhelphtml/thtmlhelpdatabase.html) , THtmlBrowserHelpViewer
(http://lazarus-ccr.sourceforge.net/docs/lcl/lazhelphtml/thtmlbrowserhelpviewer.html) , TProcessUTF8 (http://lazarus-ccr.sourceforge.net
/docs/lcl/asyncprocess/tprocessutf8.html) , TAsyncProcess (http://lazarus-ccr.sourceforge.net/docs/lcl/asyncprocess/tasyncprocess.html) ,
TProcess, TSimpleIPCClient, TSimpleIPCServer, TXMLConfig, TEventLog
* SynEdit
TSynEdit, TSynAutoComplete, TSynExporterHTML, TSynMacroRecorder, TSynMemo, TSynPasSyn, TSynFreePascalSyn, TSynCppSyn,
TSynJavaSyn, TSynPerlSyn, TSynHTMLSyn, TSynXMLSyn, TSynLFMSyn, TSynUNIXShellScriptSyn, TSynCssSyn, TSynPHPSyn,
TSynTeXSyn, TSynSQLSyn, TSynPhytonSyn, TSynAnySyn, TSynMultiSyn
Un grupo de componentes para ayudar a interactuar con otros lenguajes y herramientas de software. SynEdit es un control de edicin
multilnea avanzado, disponible tambin para Borland Delphi, Kylix y C++Builder. Soporta resaltado de sintaxis y terminacin de cdigo, e
incluye filtros de exportacin para html, tex y rtf. Son controles desarrollados enteramente con VCL/CLX , lo que significa que no son un
envoltorio para controles de M$Windows, y por tanto no precisa de ninguna librera de tiempo de ejecucin; esto hace a SynEdit un
componente de plataforma cruzada. La compatibilidad con FreePascal est tambin planeada, y SynEdit es el componente de edicin en el
IDE de Lazarus. Ver SynEdit (http://wiki.freepascal.org/SynEdit/es) .
* IPro
TIpFileDataProvider, TIpHtmlPanel
* SQLdb
TSQLQuery, TSQLTransaction, TSQLScript, TSQLConnector, TPQConnection, TOracleConnection, TODBCConnection,
TMySQL40Connection, TMySQL41Connection, TSQLite3Connection, TMySQL50Connection, TIBConnection
* RTTI
TTIEdit, TTIComboBox, TTIButton, TTICheckBox, TTILabel, TTIGroupBox, TTIRadioGroup, TTICheckGroup, TTICheckListBox,
TTIListBox, TTIMemo, TTICalendar, TTIImage, TTIFloatSpinEdit, TTISpinEdit, TTITrackBar, TTIProgressBar, TTIMaskEdit,
TTIColorButton, TMultiPropertyLink
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
14 de 20 09/06/2014 09:24 p.m.
Como utilizar los controles estndar, comunes y extendidos
Las unidades StdCtrls, ComCtrls y ExtCtrls contienen definiciones y descripciones de algunos de los controles ms comunmente utilizados en la
contruccin de formularios (Forms) y otros objetos de las aplicaciones generadas con Lazarus.
Algunos de los controles finales que el desarrollador utiliza, tales como TButton, TMemo, TScrollBar etc, tienen su correspondiente clase ancestro
tal como TCustomButton, TCustomMemo o TCustomScrollBar. Algunas de las propiedades y mtodos relevantes para el control final se definen (y
se explican) ms en profundidad en la clase TCustomXXX , y son heredados por el control final.
Si se sita un componente en el editor de formularios no se necesita aadir cdigo explcitamente para crearlo. El componente es creado
automticamente por el IDE junto con el formulario (form) e igualmente destruido al tiempo que el formulario se destruye.
De igual forma, si creas un componente por t mismo, no debes olvidarte de liberar sus recursos cuando ya no sea necesario.
Si colocas un componente en el diseador de formularios (Form Designer) y observas el Inspector de Objetos (Object Inspector), puedes ver como
cambian las propiedades a medida que mueves el componente por el formulario.
Por ejemplo, si pones un botn (TButton) en el formulario, lo seleccionas con el ratn y lo arrastras por el formulario podrs observar como los
valores de las propiedades Top (arriba) y Left (izquierda) cambian en el Inspector de Objetos para reflejar la nueva posicin. Igualmente si utilizas las
barras de redimensionado para ajustar su tamao, puedes observar como cambian los valores de las propiedades Height (altura) y Width (anchura).
Por otro lado, utilizando el inspector de objetos, puedes modificar el valor asociado con una determinada propiedad tal como la altura (Height) y
dandole un nuevo valor (dentro del rango soportado); de esta forma puedes observar directamente como el tamao del objeto seleccionado en el
formulario (o el mismo formulario si es el seleccionado) cambia para reflejar el nuevo valor.
Puedes adems cambiar explcitamente las propiedades del objeto mediante cdigo tecleando (en la seccin de implementacin apropiada del
editor de cdigo fuente), por ejemplo
Formulario1.Boton1.Height := 48;
Si escribes este nuevo valor en el editor de cdigo fuente y miras de nuevo en el diseador de formulario (Form Designer), puedes observar que el
botn en el formulario ha tomado el nuevo tamao. El nuevo valor se mostrar tambin en el inspector de objetos.
En resumen, la mayor parte de las veces las propiedades de un objeto se pueden establecer de tres formas diferentes para lograr lo mismo:
Utilizando el ratn,
Estableciendo los valores en el inspector de objetos,
explcitamente escribiendo en el cdigo fuente en la seccin adecuada.
Nota: todo lo que se dice respecto de modificar las propiedades de los objetos mediante cdigo, tiene efecto nicamente en tiempo de ejecucin, por lo que los efectos de los valores modificados no pueden
observarse en el Inspector de Objetos.(iskraelectrica)
Los componentes definidos en estas unidades tienen varias propiedades que son comunes a la mayor parte de ellos, mientras que otras propiedades
son especficas de componentes individuales. Aqu describiremos algunos de los ms comunes. Las propiedades menos usuales o especficas de
controles se describirn en la explicacin de los controles individuales.
Siempre se puede obtener ayuda adicional seleccionando una propiedad o palabra, tanto en el inspector de objetos como en el editor de cdigo
fuente, y a continuacin presionando F1. Esto har que el visor de ayuda nos presente la pgina adeduada que buscamos dentro de la documentacin
disponible.
Si la descripcin de una propiedad en dicha pgina no es suficiente, se puede navegar a la correspondiente descripcin en las clases ancestro,
seleccionando los enlaces en el listado de herencia o seleccionando un tipo de ancestro en la declaracin del objeto.
Los constructores tales como Create reservan la memoria y otros recursos del sistema que necesita el objeto. Tambin llama a los constructores de
los objetos que componen la clase.
Destructores: eliminan el objeto y liberan la memoria y los otros recursos que pudiera haber tomado. Si se llama a Destroy de un objeto que
todava no se ha inicializado se produce un error. Siempre se debe utilizar el mtodo Free para desalojar objetos porque comprueba cuando el valor
del objeto no est establecido, es nil, antes de invocar a Destroy.
Hay que tomar las siguientes precauciones cuando alguien crea su propio mtodo Destroy:
Declarar Destroy con la directiva override , porque es un mtodo virtual.
Llamar siempre inherited Destroy; como lo ltimo en el cdigo del destructor.
Tener en cuenta que se puede generar una excepcin (exception) por parte del constructor en el caso de que no exista suficiente memoria para
crear el objeto, o cualquier otra cosa salga mal. Si no se maneja la excepcin dentro del constructor, entonces el objeto solamente se construir
parcialmente. En este caso se llamar a Destroy en el momento que no se espera, por lo que el destructor debe comprobar si los recursos
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
15 de 20 09/06/2014 09:24 p.m.
fueron realmente asignados antes de liberarlos.
Recuerda llamar a Free para todos los objetos del constructor.
Algunas propiedades habitualmente listadas:
Propiedad Significado
Action
La accin principal o el evento asociado con el objeto. Por ejemplo, seleccionando un botn 'Salir' debera causar la accin
'Cerrar'
Align
Define la manera en la que un objeto se alinea con el objeto padre. Los posibles valores son alTop (situado arriba del todo y
utilizando el mximo ancho disponible), alBottom, alLeft (situado a la izquierda y utilizando la mxima altura disonible), alRight.
alNone (ubicado en cualquier sitio del objeto padre) o alClient (toma todo el espacio disponible hasta los controles cercanos
alinendolo hacia arriba, abajo, izquierda y derecha)
Anchor
Utilizado para mantener un control a una cierta distancia de los bordes definidos del control padre, cuando este ltimo es
redimensionado. Por ejemplo [akBottom, akRight] mantendr el control a una distancia fija de la esquina inferior derecha.
AutoSelect
Cuando su valor es verdadero (True), se selecciona todo su texto en un control de edicin cuando recibe el foco (es seleccionado)
o cuando se presiona la tecla Enter (Intro).
AutoSelected
Verdadero (True) indica que el control edit o combobox ya han realizado una operacin AutoSelect por lo que los subsecuentes
clicks de ratn y pulsaciones de tecla proceden con normalidad sin seleccionar texto.
BorderSpacing El tipo y el espacio alrededor del borde entre un control anclado (Anchored) y su padre.
Caption
El texto que es mostrado en o cerca del control; debera sugerir el tipo de funcin del control, o una instruccin como 'Close' o
'Execute'. Por defecto Caption se establece para tener el mismo valor que la propiedad 'Name', y el programador de la aplicacin
debera sustituirlo por uno con mayor significado para la aplicacin, en lugar de dejar el valor dado automticamente.
CharCase
Indica como se muestra el texto en un control de edicin: Normal (reteniendo el tipo de letra (maysculas/minsculas) tecleada
por el usuario), convertido a maysculas (uppercase), o convertido a minsculas (lowercase)
Constraints
Establecen el tamao mnimo y mximo para un control. Si un control se redimensiona, las nuevas dimensiones estarn siempre
comprendidas dentro del rango definido aqu. Se debe tener especial cuidado cuando se establecen estas opciones para que no
entren en conflicto con las configuraciones de ancho y alineado.
Color El color a usar para dibujar el control o para escribir texto que contiene.
Enabled
Propiedad booleana para determinar cuando o no un control es capaz de ser seleccionado y realizar una acccin. Si no se
encuentra habilitado (Enabled), entonces se presenta con un color grisaceo (Grayed) fuera en el formulario.
Font
Fuente que se utilizar para escribir el texto asociado con el control - tampoco caption o label, o las cadenas de texto contenidas
en el control. La entrada en el inspector de objetos habitualmente tiene un cuadro (+) a la izquierda, y seleccionndolo muestra
ms opciones tales como el juego de caracteres, color y tamao.
Hint
Un trozo corto de texto informativo emergente (pop-up) que aparece si se deja el cursor del ratn sobre el control por un breve
espacio de tiempo.
Items
El listado de cosas 'Things' que un objeto contiene, tal como un grupo de imgenes, una serie de lneas de texto, un nmero de
acciones en un actionlist, etc
Lines
Una matriz de cadenas de texto, conteniendo datos textuales en controles con ms de una sola lnea de datos, tal como un
Edit-Box o un Combo-Box. La matriz tiene un ndice con base cero, eg las lneas estn numeradas [0..numLines-1]
Name
El identificador por el que el control es conocido en el programa. El IDE( Entorno Integrado de Desarrollo) le asigna un nombre
por defecto basndose en su tipo subyacente, por ejemplo, sucesivas instancias de TBitButton se deberan nombrar
Form1.BitBitton1 y Form1.BitButton2; depende ya del programador de la aplicacin darle un nombre con ms significado tal
como ExitButton o OKButton. Por defecto el nombre del control se aplica a Caption, pero el texto de Caption puede ser
cambiado por separado.
PopUpMenu
Una ventana conteniendo un men de informacin sensitivo al contexto que emerge (pop-up) cuando se acciona el pulsador
derecho del ratn en el objeto.
Position (or Top,
Left)
Determina donde se ubica el control en el formulario o ventana padre/td>
ReadOnly
Propiedad booleana que si est establecida a verdadero (True), significa que el contenido del control puede ser leido por el usuario
o la rutina llamante, pero que no puede ser escrita o cambiada.
ShowHint
Permite una pequea ventana (bocadillo) conteniendo ayuda sensible al u otra descripcin que deba mostrarse cuando el cursor se
sita sobre el objeto.
Size (or Height
and Width)
Las dimensiones del control
Style
Las opciones disponibles para estilo (Style) dependen del tipo de control que se vaya a considerar: por ejemplo el estilo puede ser
definido para TFormStyle, TBorderStyle, TButtonStyle etc.
TabOrder Entero que sirve para definir en que solapa se encuentra (dentro de un objeto) del listado total de las disponibles
TabStop
Propiedad booleana que si se establece a verdadero (True)sita este control en la secuencia de objetos que el usuario puede
alcanzar pulsando sucesivamente la tecla de tabulacin (TAB)
Text
Cadena de texto que representa el dato actual que contiene el control. Se aplica particularmente a los tipos de objeto Text, Memo
y StringLis. La mayor parte de las operaciones de edicin (tales como Select, Clear, Cut, Copy) se realizan en esta parte del
objeto, que mantiene la cadena actual que va a ser editada. Si el control contiene ms de una sola lnea de texto, por ejemplo
TMemo o TComboBox, entonces los elementos textuales se organizan como una matriz de cadenas (con base cero, ie numeradas
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
16 de 20 09/06/2014 09:24 p.m.
desde [0..numLines-1]) en Lneas.
Visible Si su valor es verdadero (True), el objeto se puede ver en el formulario; si es falso (False), el objeto permanece oculto
WordWrap
Flag (bandera o sealizador) para mostrar si el desplazamiento de palabra est habilitado o no. eg si una palabra est cercana al
final de una lnea y va a ser demasiado larga para contener en ella, entonces se la emplaza abajo en la siguiente lnea.
Algunas acciones se listan comunmente en la solapa 'Eventos' del inspector de objetos. Seleccionando una entrada del listado aparece un
ComboBox con un listado leleccionable (DropDown list)mostrando las acciones que tiene definidas, y permitiendo escoger una para asociarla a este
evento. Alternativamente se puede seleccionar la elipsis (tres puntos ...) que nos llevar a un rea del editor de cdigo fuente donde se puede
empezar a teclear nuestras propias instrucciones de accin para el evento seleccionado.
A pesar de la gran cantidad de eventos disponibles para un control dado, en la prctica lo ms habitual es utilizar slamente unos pocos de ellos.
Para la mayor parte de los controles es ms que suficiente el uso de 'OnClick'; para otros ms complejos 'OnEntry' (cuando el cursor del ratn entra
en el control y le da el foco o seleccin) y 'OnExit' (cuando el cursor del ratn abandona el control); o puedes necesitar escribir un gestor de
enventos para 'OnChange' o 'OnScroll', dependiendo de la naturaleza de un control particular con el que se est tratando.
El men emergente (pop-up) que aparece cuando se hace click con el pulsador derecho del ratn en el diseador de formularios tiene como primer
elemento: 'Create default event' y seleccionando esta opcin tendremos el mismo efecto que seleccionando la elipsis en el inspector de objetos para
el evento por defectot, usualmente OnClick: esto nos lleva al rea de implementacin del editor de cdigo fuente donde podemos escribir el cdigo
para el manejador del evento.
Una estrategia habitual en la programacin orientada a objetos es aportar un listado de acciones (ActionList) con la facilidad de entrar, eliminar o
editar un determinado nmero de acciones predefinidas desde las que poder seleccionar las ms apropiadas para un determinado propsito.
Algunas acciones listadas habitualmente
Accin Significado
OnChange
Accin a realizar si se detecta un cambio (eg movimiento del ratn, click de ratn, pulsacin de tecla, edicin de texto, cambio de
una imagen, etc)
OnClick
Accin a realizar cuando se acciona el pulsador izquierdo del ratn. Esta es habitualmente la accin principal o por defecto del
control; por ejemplo, accionando un pulsador en un checkbox inicia la accin asociada con el checkbox. Esto puede iniciar
alternativamente un proceso de seleccin, por ejemplo en un TextBox o Memo, o sealizar el comienzo de dibujo con un lpiz
(Pen) o brocha (Brush).
Click
Un mtodo para emular mediante cdigo el efecto de accionar en un control. Este mtodo se encuentra frecuentemente en
controles del tipo Button(TButton, TBitBtn, TSpeedButton etc). Se puede escribir un procedimiento que llame el mismo cdigo que
la accin OnClick. Esta facilidad puede ser particularmente til si la activacin del control por accionamiento produce una cascada
de activacin de otros controles, y el mtodo Click se puede utilizar para iniciar la accin, en lugar de que el usuario tenga que
hacer click explcitamente en gran cantidad de controles.
OnDragDrop
Accin a realizar durante un Drag-Drop manoeuvres, ie cuando el ratn se utiliza para capturar 'capture' un elemento o algn texto
etc y lo mueve hacia alguna alguna ubicacin nueva en la pantalla.
OnEditingDone
Accin a realizar cuando el usuario ha terminado todas las ediciones / modificaciones al control. Esto a menudo se utiliza para
validar el contenido del control (por ejemplo, comprobar si un texto escrito es una direccin IP vlida)
OnEntry
Accin a realizar cuando el cursor del ratn entra en el rea ocupada por el objeto, usualmente transfiriendo el foco al objeto. Esto
puede incluir cambios en el aspecto del objeto tales como luminosidad o la aparicin de un borde emergente.
OnExit Accin a realizar cuando el ratn se mueve fuera del rea del objeto, habitualmente transfiriendo el foco fuera del objeto.
OnKeyPress
Accin a realizar ante la pulsacin de cualquier tecla. Sutilmente diferente de OnKeyDown, la cual cual simplemente responde a
una tecla, independientemente de si ya estaba pulsada cuando se obtuvo el foco por parte del control. OnKeyPress requiere que
una tecla sea pulsada mientras el control tiene el foco.
OnKeyDown
Accin a realizar si se pulsa una tecla mientras el control tiene el foco. Sutilmente diferente de OnKeyPress - por ejemplo la tecla
debe haberse presionado con el foco ya obtenido por el control, mientras que OnKeyPress requiere que la tecla sea pulsada
mientras el foco est en el control.
On Key Up Accin a realizar si la tecla no est pulsada (eg no presionada) mientras el control tiene el foco.
OnMouseMove On Mouse Down - Accin a ser realizada si el cursor del ratn se mueve mientras el control tiene el foco.
OnMouseDown Accin a realizar si el pulsador del ratn est accionado mientras el control mantiene el foco (est seleccionado).
OnMouseUp
Accin a realizar si el pulsador del ratn no est presionado mientras el cursor est sobre el control. Implica que el pulsador del
ratn fu previamente accionado y posteriormente soltado. El caso en el que el cursor entra en el control, pero el pulsador del ratn
no ha sido todava presionado es tratado por OnEntry o OnMouseEnter.
OnResize
Accin a realizar cuando el control es redimensionado. Puede requerir realineacin del texto o seleccin de un tipo de tamao de
fuente diferente etc.
Cmo utilizar mens en nuestros programas
El componente de tipo TMainMenu es responsable de crear el men principal que aparece en la parte superior de muchos formularios; los
diseadores pueden personalizarlo eligiendo itens para el men. El componente de tipo TPopupMenu crear un men en una ventana emergente, con
opciones pertinentes segn el contexto, normalmente aparece al pulsar el botn derecho del ratn sobre cierto control.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
17 de 20 09/06/2014 09:24 p.m.
TMainMenu es un componente invisible: el icono que representa al componente no aparece en tiempo de ejecucin, lo que aparece es el men que
hemos definido mendiante el Editor de Men. Lo mismo sucede con los componentes TPopupMenu que insertemos en nuestros formularios.
Para acceder al (Editor de Men (http://wiki.lazarus.freepascal.org/Image:IDE_Editor_Menu.png) ) hacemos doble clic sobre el icono del
componente en el formulario; aprecer una ventana donde podremos definir los elementos que compondrn el men. Al aparecer por primera vez la
ventana muestra un botn rotulado New Item1. Si pulsamo el botn derecho mientras lo sealamos con el ratn se mostrar el men contextual con
las opciones posibles que podemos ralizar: aadir un nuevo elemento (despus o antes), borrar el elemento, crear un submen, y otras.
Las propiedades del elemento seleccionado, como su etiqueta, nombre o comportamiento, pueden ser editadas en el Inspector de Objetos.
Lo mnimo que debemos cambiar es el rtulo (propiedad Caption) que mostrar el elemento en el men, para que se identifique la accin que se
realiza con con la opcin del men ("Abrir archivo", "Salir", etc.).
Si queremos asociar cierta letra del rtulo como un atajo de teclado hay que preceder la misma con un smbolo &. As, &Archivo se ver al
ejecutar el programa como Archivo. Al pulsar esa letra (A, en este ejemplo) junto con Alt activar la opcin correspondiente del men. Tambin
podemos asignar una combinacin de teclas como atajo (normalmente para opciones de submen), tales cmo Ctrl + C para copiar o Ctrl + V
para pegar, mediante la propiedad ShortCut del elemento.
Es provechoso utilizar los controles de men en el conjuccin con un ActionList que contenga una serie de acciones (Actions) estndar o
personalizadas. Los items de men se pueden enlazar en el Inspector de Objetos a las acciones en la lista, y estas mismas acciones se pueden enlazar
a Botones, Barras de Botones (ToolBar Buttons), Botons rpidos (SpeedButtons), etc.Economizaremos esfuerzos al reutilizar el mismo cdigo para
responder a varios acontecimientos, en vez de escribir cdigo para el evento OnClick de cada control individual.
De forma predeterminada ciertas acciones normales se cargan en StdActns o, si son controles de Datos (DataAware) en DBActns y estas se pueden
seleccionar mediante el editor de ActionList que aparece al hacer bole clic sobre el icono del componente en el formulario.
El Depurador
Todava est por escribir?. esta linea se deja por respeto al autor(a)
solucion depurador
En version 0.9.26 men 'Entorno'->'Options ...' -> 'Debugger' elegir 'GNU debugger (gdb)' y buscar ubicacin (en ubuntu /debian es '/usr/bin
/gdb').
Nota1: gdb (sin extensin), es el archivo ejecutable linux del depurador.
Los archivos de Lazarus
(Gracias a Kevin Whitefoot.)
(Aadidos de Giuseppe Ridin, Usuario:Kirkpatc y Tom Lisjac)
Al guardar se graban dos archivos:
xxx.pas
yyy.lpr
(Se guardan ms, pero estos son a los nicos que tiene que poner nombre). El archivo proyecto (lpr) y el archivo unidad (pas) no deben tener el
mismo nombre porque amablemente Lazarus renombrar la unidad (dentro del cdigo fuente) con el mismo que el del archivo unidad y el programa
con el mismo del archivo proyecto (es necesario hacer esto, porque si no el compilador probablemente no sea capaz de encontrar la unidad, ms
tarde, cuando se refiera a ella en el archivo proyecto). Claro, para ser coherente cambia siempre unit1 por xxx.
As que si guarda un proyecto llamado again, si intenta guardar again.pas y again.lpr obtendr fallos, porque los nombres de la unidad y el
programa son iguales, con lo que se produce un error de duplicacin de nombre. A continuacin, lo que obtuve:
e:/lazarus/kj/lazhello:
total 4740 free 76500
-rwxrwxrwx 1 kjwh root 4618697 Mar 24 11:19 again.exe
-rw-rw-rw- 1 kjwh root 3002 Mar 24 11:21 again.lpi
-rw-rw-rw- 1 kjwh root 190 Mar 24 11:18 again.lpr
-rw-rw-rw- 1 kjwh root 506 Mar 24 11:08 againu.lfm
-rw-rw-rw- 1 kjwh root 679 Mar 24 11:08 againu.lrs
-rw-rw-rw- 1 kjwh root 677 Mar 24 11:08 againu.pas
-rw-rw-rw- 1 kjwh root 2124 Mar 24 11:08 againu.ppu
-rwxrwxrwx 1 kjwh root 335 Mar 24 11:07 ppas.bat
Observe que hay ms de los dos archivos que pens que estaba guardando.
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
18 de 20 09/06/2014 09:24 p.m.
A continuacin, una breve nota sobre cada archivo:
again.exe: El programa principal ejecutable binario. Win32 aade una extensin "exe". En Linux no tiene ninguna. Este archivo ser enorme en
Linux debido a la inclusin de smbolos de depuracin. Ejecute la utilidad 'strip' para borrarlos y disminuir bastante el tamao del ejecutable.
again.lpi: Este es el archivo principal del proyecto Lazarus (Lazarus Project Information); el archivo principal de una aplicacin equivalente en
Delphi ser .dpr. Se almacena en formato XML.
again.lpr: El archivo fuente del programa principal. A pesar de su extensin especfica de Lazarus es en realidad un archivo fuente totalmente
normal de Pascal. Tiene una clusula de usos que permite al compilador encontrar las unidades que necesita. Ntese que la declaracin del programa
no tiene que ponerle el mismo nombre al programa que al archivo.
againu.lfm: Aqu es donde Lazarus almacena el diseo del formulario. Lazarus utiliza esto para generar un archivo fuente que est incluido en la
seccin de inicio de la unidad againu.pas unit. Los archivos de Delphi dfm se pueden convertir a formato lfm format en el IDE de Lazarus mediante
Herramientas->Convertir archivo DFM A LFM.
again.lrs: Este es el archivo fuente generado. Advirtase que no es un archivo fuente de Windows.
againu.pas: La unidad que contiene el cdigo del formulario.
again.ppu: La unidad compilada.
ppas.bat: Un script sencillo que enlaza el programa para crear el ejecutable: Si la compilacin tiene xito, lo borra el compilador.
Herramientas del IDE de Lazarus
Colaboradores iniciales y cambios
Esta pgina se ha importado desde el epiwiki version (http://lazarus-ccr.sourceforge.net/index.php?wiki=LazarusTutorial) .
Created initial page and template. T. Lisjac - 11/04/2003 VlxAdmin
Inserted a note containing instructions for writing your first Lazarus Program. Suggest an administrator places it in the appropriate place on the
Tutorial menu. 3/09/2004 User:Kirkpatc
Per above, moved Chris's writeup to the main body of the tutorial VlxAdmin
Began to insert text describing the Lazarus Editor - more to follow! 24 Mar 2004 User:Kirkpatc
Added some more to Lazarus Editor section of Tutorial. 25 Mar 2004 User:Kirkpatc
Added screenshots and revised some of the page formatting VlxAdmin 3/25/2004
Moved some of kwhitefoot's comments into Tutorial section. Formatting not quite right, but have to go to bed now! 26 Mar 2004
User:Kirkpatc
Formatted, added credits and comments. Removed original notes. VlxAdmin 3/26/2004
More material added to Editor section of tutorial. 26 Mar 2004 User:Kirkpatc
More material added describing the Main Menu. Renamed 'Hello World' to 'Getting Started' and moved it to nearer the top. 31 March 2004
User:Kirkpatc
Inserted section on Run sub-menu. Some general editing (eg ended each entry with a period to ensure consistency). 9 Apr 2004 User:Kirkpatc
Inserted a new section on How to get started with MySQL in FPC/Lazarus. 13 Apr 2004 User:Kirkpatc
Deleted the section on MySQL from here: it has been copied to Lazarus Database section of tutorial. 14 Apr 2004 User:Kirkpatc
Added some more to the description of the Editor Main Menu. 18 Apr 2004 User:Kirkpatc
Added section on Environment sub-menu. 19 Apr 2004 User:Kirkpatc
Added section on Components sub-menu. 4 May 2004 User:Kirkpatc
Adding Tools sub-menu description (incomplete). 7 May 2004 User:Kirkpatc
Added some screenshots to Menu descriptions. 9 May 2004 User:Kirkpatc
Fixed a bit in Environment Options - thanks VincentSnijders. 14 May 2004 User:Kirkpatc
More additions to Tools sub-menu. 19 May 2004 User:Kirkpatc
Added a section on the Button Bar and started work on The Component Palette. 20 May 2004 User:Kirkpatc
Posted a description file for the StdCtrls unit of the LCL, in the hope that people will add comments. 26 May 2004 User:Kirkpatc
Edited the StdCtrls file, removing a lot of repetitive material and doing some formatting. It is still far too long. 28 May 2004 User:Kirkpatc
Expanding on the Components Palette. 5 June 2004 User:Kirkpatc
Added a lot to the DialogExamples page. 10 June 2004 User:Kirkpatc
Considerable revision of the StdCtrls page, hopefully making it clearer and encouraging people to contribute - particularly in the 'Description'
sections. 14 June 2004 User:Kirkpatc
Added pages for Menus and Dialogs units (linked to Component Palette description) - please feel free to add to these pages. 14 June 2004
User:Kirkpatc
Added page for Common Controls (linked to Component Palette). 16 June 2004 User:Kirkpatc
Added MaskEdit page (linked to Component Palette). 17 June 2004 User:Kirkpatc
Added Buttons, ExtCtrls pages (linked to Component Palette). 17 June 2004 User:Kirkpatc
Edited MainMenu component description page. 23 June 2004 User:Kirkpatc
Some additions to Common Controls. 28 June 2004 User:Kirkpatc
A new tutorial on Text-mode Pascal programming has been added. 5 July 2004 User:Kirkpatc
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
19 de 20 09/06/2014 09:24 p.m.
Minor changes to ComCtrls, ExtCtrls, Environment Menu. 10 July User:Kirkpatc
Added FormsTxt, component description page for Component Palette. 20 July 2004 User:Kirkpatc
Some corrections to ConsoleModePascal. 21 July 2004 User:Kirkpatc
Some small changes to ComponentPalette. 22 July 2004 User:Kirkpatc
Some edits and additions to the Lazarus Component section. 23th Jan 2009 User: Miyatake
Ilustracin grfica (casi) completa y actualizada a la versin 0.9.26.2 de Lazarus. 17 junio 2009. User:Iskraelectrica
Retrieved from "http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&oldid=73579"
Categories: Castellano Espaol Tutorials/es
This page was last modified on 19 October 2013, at 17:57.
Content is available under .
Lazarus Tutorial/es - Free Pascal wiki http://wiki.freepascal.org/index.php?title=Lazarus_Tutorial/es&printable=yes
20 de 20 09/06/2014 09:24 p.m.

S-ar putea să vă placă și