SlideShare uma empresa Scribd logo
1 de 11
Baixar para ler offline
Lazarus Free Pascal Compiler
Figura No. 1.
Licencia: GPL/LGPL
Lazarus son las bibliotecas de clase para Free Pascal que emulan Delphi. Free Pascal es un compilador
(L)GPL que se ejecuta en Linux, Win32, OS/2 68K y más. Free Pascal está diseñado para ser capaz de
comprender y compilar la sintaxis de Delphi, que por supuesto es POO.
Lazarus es la parte que falta del puzzle que te permitirá desarrollar programas al estilo Delphi en todas las
plataformas especificadas. El IDE se convertirá en una herramienta RAD como Delphi.
Según vaya creciendo Lazarus necesitaremos más desarrolladores.
Official: http://sourceforge.net/projects/lazarus/
Tutorials: http://lazarus-ccr.sourceforge.net
Tutorial desarrollado por:
Universidad Mariano Gálvez
Facultad de Ingeniería en Sistemas
0908-01-10469 José de Paz
jose.depaz@gmail.com
Lazarus IDE
Figura No. 2.
La IDE (Figura No. 2) de Lazarus esta distribuida por los siguientes componentes:
1. Paleta de componentes
2. Inspector de objetos
3. Editor de código fuente
4. Formularios
5. Mensajes del compilador
Palete de Componentes
Inspector
de objetos
Editor de
codigo
fuente
formularios
Mensajes del
compilador
Primer Proyecto
Para crear nuestro primer proyecto debemos ir a la barra de menús y seleccionar en Proyecto->Nuevo
proyecto:
Figura No. 3.
Luego, seleccionar en “Aplicación” y luego click en el botón “Crear”. (Figura No. 3)
Figura No. 4.
Ahora, cuando Lazarus se inicia, carga un proyecto por default, en este caso estamos creando un nuevo
proyecto, y hacemos click en el botón “No”. (Figura No. 4.).
Automáticamente se crea un proyecto, el cuál contiene un formulario llamado “Form1”, el cual puede
observarse en la ventana “Inspector de Objetos”.
Ahora vamos a agregar un botón de comando (TButton, Figura No. 5.), para esto nos vamos a la paleta de
componentes y nos situamos en la pestaña “Standard” y seleccionamos el componente; hay dos formas de
agregarlo:
1. haciendo doble click sobre él
2. haciendo click sobre él y dibujarlo a nuestra medida en el formulario.
Figura No. 5.
Después de haber agregado el botón, vamos a modificarle la propiedad “Caption”, y le insertamos algo
como esto “Presionar”, tener en cuenta que debemos tener seleccionado el botón y no el formulario.
Figura No. 6.
Ahora vamos a codificar el evento “OnClick” del botón, haciendo doble click sobre él o bien seleccionando
el evento desde el “Inspector de Proyectos”, en la pestaña “Eventos”. Haciendo esto, se mostrara la venta
del “Editor de código fuente” y se creara un evento para el TButton
Figura No. 7.
y agregamos la siguiente línea de código, tal como se muestra en la figura No. 7., listo presionamos la tecla
“F9” para ejecutar el proyecto, o bien en la barra de menús “Ejecutar->Ejecutar”, luego de presionar el
botón “Presionar”, debemos observar lo siguiente:
Figura No. 8.
Terminando, debemos guardar nuestro proyecto y formulario, para estos nos vamos a la barra de menús y
hacer click en “Proyecto->Guardar Proyecto”.
Conexión a base de datos
Lazarus dispone de componentes para conexión a base de datos, la cual encontramos en la pestaña “SQLdb”
de la paleta de componentes. (Figura No. 9)
Figura No. 9.
Tiene componentes de conexión a las siguientes base de datos:
TIBConnection (FireBird / Interbase)
TODBCConnection (conexión ODBC)
TOracleConnection (Oracle )
TMySQL40Connection (MySQL Server 4.0)
TMySQL41Connection (MySQL Server 4.1)
TMySQL50Connection (MySQL Server 5.0)
TPQConnection (PostgreSQL)
Para este ejemplo, utilizaremos MySQL Server 5.0, y la base de datos que trae por default llamada “test”, en
la cual crearemos la tabla “emple” y le ingresaremos algunos valores (Figura No. 10).
Figura No. 10.
Ahora vamos a crear un proyecto, en el cual tendremos un formulario con un datagrid (TDBGrid), en él cuál
mostraremos el contenido de la tabla llamada “emple”. Para esto necesitamos agregar los siguientes
componentes al formulario (Figura No. 11):
TMySQL50Connection TSQLTransaction TSQLQuery
TDatasource TDBGrid
Figura No. 11
El componente “Datasource”, lo encontramos en la pestaña “Data Access”, y el componente “DBGrid” en
la pestaña “Data Controls”; de paleta de componentes.
Ahora, vamos a configurar algunas propiedades de los componentes para que podamos acceder a la BD y así
mismo extraer los registros y mostrarlos en el TDBGrid.
DatabaseName: test
HostName: localhost
User: root
Password: <tu clave de acceso a la base de datos>
Connected: True
Transaction: SQLTransaction1
Database: MySQL50Connection1
Database: MySQL50Connection1
SQL: select * from emple;
Transaction: SQLTransaction1
Active: True
En el caso de la propiedad SQL, debemos abrir el “Diálogo Editor de Strings” cuando
estemos situados en la propiedad “SQL”, y luego agregar la consulta SQL y presionar el botón
“Ok”
DataSet: SQLQuery1
DataGrid1 DataSource: Datasource1
Al momento de cambiar la propiedad “DataSource” del componente “DBGrid1”, se mostrara el contenido
de la consulta SQL, esto nos quiere decir que todo esta bien, y solo resta presionar “F9” para ejecutar el
proyecto, o bien en la barra de menús “Ejecutar->Ejecutar”. (Figura No. 12)
Figura No. 12.
Ahora, detenemos el proyecto y vamos a agregar un botón (Figura No. 13) al formulario y le modificamos la
propiedad “Caption” por “Actualizar”, la función del mismo es para actualizar los registros en el DBGrid, y
para probarlo, vamos a codificar el evento “OnClick” haciendo doble click sobre él, y le agregamos el
siguiente código: (Figura No. 14)
Figura No. 13
Figura No. 14
ejecutamos la aplicación, luego insertamos un registro en la tabla emple (Figura No. 15), luego tendremos
que presionar el botón para que actualice la información (Figura No. 16).
Figura No. 15.
Figura No. 16.
Si insertamos un registro y luego presionamos el botón, tendríamos que ver el nuevo registro en el DBGrid.
Insertar un registro desde el formulario
Para llevar a cabo la inserción de registros desde el formulario, vamos a agregar los siguientes componentes:
tres etiquetas (TLabel) y tres cuadros de texto (TEdit), estos componentes se encuentran en la pestaña
“Standard” de la paleta de componentes, y los organizamos en el formulario (Figura No. 17)., a los TLabel,
les cambiamos la propiedad “Caption” por la correspondiente (CODIGO, NOMBRE, APELLIDO), y a los
TEdit les borramos la propiedad “Text” que trae por default.
Figura No. 17.
Ahora, vamos a modificar el código del evento “OnClick” del botón “Actualizar”, para esto hacemos doble
click sobre él y agregamos el siguiente código (Figura No. 18):
Figura No. 18.
Ahora vamos a ejecutar el proyecto, presionamos la tecla “F9” para ejecutar el proyecto, o bien en la barra de
menús “Ejecutar->Ejecutar”, debemos observar lo siguiente (Figura No. 19):
Figura No. 19.
Listo, insertaremos los siguientes valores (Figura No. 20). y después presionamos el botón “Actualizar”, y
tendríamos que ver el registro en el DBGrid:
Figura No. 20.
Ahora, debemos borrar el contenido de los cuadros de texto (TEdit), y mostrar un mensaje diciendo que el
registro ha sido guardado, detenemos el proyecto y agregamos el siguiente código (Figura No. 21):
Figura No. 21
Validando la entrada de datos
Debemos agregar un componente TSQLQuery y configurar las siguientes propiedades:
Database: MySQL50Connection1
Transaction: SQLTransaction1
Ahora, lo que tenemos que validar es la entrada de datos en:
Código = números mayores a cero y que no exista el registro en la base de datos
Nombre = que sea mayor o igual a tres caracteres
Apellido = que sea mayor o igual a tres caracteres
Para la validación del código, vamos a convertir el contenido del Edit1 (Text) a entero y luego con un if,
haremos la condición para ver si es mayor a cero; para la conversión (cast), vamos tomar en cuenta si se
produce alguna excepción, utilizando Try --> Except:
Figura No. 21
Según la figura No. 21; vamos a crear una función llamada Entero, para esto nos vamos al Editor del código
fuente y después de implementation agregamos el código según la figura. La función recibe como
parámetro un String y nos devuelve un valor booleano; convierte el valor recibido a entero y luego
condiciona si el valor es mayor a cero, devolviendo como resultado True si esto se cumple, y False si hay
error de conversión o si el valor es menor a cero.
Luego vamos a modificar el código del evento OnClick del botón Actualizar, quedando como en la figura
No. 22; en donde el SQLQuery2 lo utilizamos para buscar el código a grabar, si existe el código, el valor de
SQLQuery2.RecordCount será mayor a cero. También se define la variable código de tipo Boolean, la cual
recibe el valor devuelto por la función Entero(Edit1.Text).
Figura No. 22

Mais conteúdo relacionado

Mais procurados

EJEMPLOS DESARROLLADOS
EJEMPLOS DESARROLLADOSEJEMPLOS DESARROLLADOS
EJEMPLOS DESARROLLADOS
Darwin Durand
 
Lab- Full IPsec Implementation.pdf
Lab- Full IPsec Implementation.pdfLab- Full IPsec Implementation.pdf
Lab- Full IPsec Implementation.pdf
Nesibusami
 
Programacion lenguaje-c
Programacion lenguaje-cProgramacion lenguaje-c
Programacion lenguaje-c
Clariza
 
Guardar y extraer imágenes en my sql
Guardar y extraer imágenes en my sqlGuardar y extraer imágenes en my sql
Guardar y extraer imágenes en my sql
Oscar Hernandez
 
MySQL developing Store Procedure
MySQL developing Store ProcedureMySQL developing Store Procedure
MySQL developing Store Procedure
Marco Tusa
 
Ejercicios áLgebra Relacional
Ejercicios áLgebra RelacionalEjercicios áLgebra Relacional
Ejercicios áLgebra Relacional
negriz
 

Mais procurados (20)

Visual Basic 6.0
Visual Basic 6.0Visual Basic 6.0
Visual Basic 6.0
 
Manual fragmentacion
Manual fragmentacionManual fragmentacion
Manual fragmentacion
 
Programación de Base de Datos - Unidad 4 Representacion de la info
Programación de Base de Datos - Unidad 4 Representacion de la infoProgramación de Base de Datos - Unidad 4 Representacion de la info
Programación de Base de Datos - Unidad 4 Representacion de la info
 
Introduction to java and oop
Introduction to java and oopIntroduction to java and oop
Introduction to java and oop
 
Sql Server
Sql ServerSql Server
Sql Server
 
10 SQL - Funções de agregação
10 SQL - Funções de agregação10 SQL - Funções de agregação
10 SQL - Funções de agregação
 
Guía de instalación de sql server 2008 r2 paso a paso
Guía de instalación de sql server 2008 r2 paso a pasoGuía de instalación de sql server 2008 r2 paso a paso
Guía de instalación de sql server 2008 r2 paso a paso
 
EJEMPLOS DESARROLLADOS
EJEMPLOS DESARROLLADOSEJEMPLOS DESARROLLADOS
EJEMPLOS DESARROLLADOS
 
Lab- Full IPsec Implementation.pdf
Lab- Full IPsec Implementation.pdfLab- Full IPsec Implementation.pdf
Lab- Full IPsec Implementation.pdf
 
Oracle
OracleOracle
Oracle
 
Programacion lenguaje-c
Programacion lenguaje-cProgramacion lenguaje-c
Programacion lenguaje-c
 
grafos estructura de datos
grafos estructura de datosgrafos estructura de datos
grafos estructura de datos
 
Guardar y extraer imágenes en my sql
Guardar y extraer imágenes en my sqlGuardar y extraer imágenes en my sql
Guardar y extraer imágenes en my sql
 
MySQL developing Store Procedure
MySQL developing Store ProcedureMySQL developing Store Procedure
MySQL developing Store Procedure
 
PROYECTO ASIR - Clúster de Alta Disponibilidad en Proxmox VE 4.4
PROYECTO ASIR - Clúster de Alta Disponibilidad en Proxmox VE 4.4PROYECTO ASIR - Clúster de Alta Disponibilidad en Proxmox VE 4.4
PROYECTO ASIR - Clúster de Alta Disponibilidad en Proxmox VE 4.4
 
Diseño de bases de datos relacionales para mantener historia
Diseño de bases de datos relacionales para mantener historiaDiseño de bases de datos relacionales para mantener historia
Diseño de bases de datos relacionales para mantener historia
 
Ejercicios áLgebra Relacional
Ejercicios áLgebra RelacionalEjercicios áLgebra Relacional
Ejercicios áLgebra Relacional
 
Ejercicio creacion de ipv6 freddy beltran
Ejercicio creacion de ipv6  freddy beltranEjercicio creacion de ipv6  freddy beltran
Ejercicio creacion de ipv6 freddy beltran
 
Calculo relacional diapositivas
Calculo relacional diapositivasCalculo relacional diapositivas
Calculo relacional diapositivas
 
Semana 5 Java Swing
Semana 5   Java SwingSemana 5   Java Swing
Semana 5 Java Swing
 

Semelhante a Lazarus

Semelhante a Lazarus (20)

Bases de datos_angelina_monetti
Bases de datos_angelina_monettiBases de datos_angelina_monetti
Bases de datos_angelina_monetti
 
bases de datos desde visual basic
bases de datos desde visual basicbases de datos desde visual basic
bases de datos desde visual basic
 
Conectar con bases de datos
Conectar con bases de datosConectar con bases de datos
Conectar con bases de datos
 
Manual de delphi 6.0
Manual de delphi 6.0Manual de delphi 6.0
Manual de delphi 6.0
 
Base de datos desde vb 6.0
Base de datos desde vb 6.0Base de datos desde vb 6.0
Base de datos desde vb 6.0
 
My Sql A C#
My Sql A C#My Sql A C#
My Sql A C#
 
My Sql A C#
My Sql A C#My Sql A C#
My Sql A C#
 
Sesión5 applets
Sesión5 appletsSesión5 applets
Sesión5 applets
 
Visual Basic 6.0
Visual Basic 6.0Visual Basic 6.0
Visual Basic 6.0
 
Presentación de visual studio (1)
Presentación de visual studio (1)Presentación de visual studio (1)
Presentación de visual studio (1)
 
Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)
 
Aplicación zirconia
Aplicación zirconiaAplicación zirconia
Aplicación zirconia
 
Programa2 eclipse
Programa2 eclipsePrograma2 eclipse
Programa2 eclipse
 
Programa 2
Programa 2Programa 2
Programa 2
 
Programa2
Programa2 Programa2
Programa2
 
Delphi 7 20051
Delphi 7 20051Delphi 7 20051
Delphi 7 20051
 
Delphi 7 20051
Delphi 7 20051Delphi 7 20051
Delphi 7 20051
 
Vb net
Vb netVb net
Vb net
 
C# conexión sql server2012-visualstudio2012-mantenimientos
C#   conexión sql server2012-visualstudio2012-mantenimientosC#   conexión sql server2012-visualstudio2012-mantenimientos
C# conexión sql server2012-visualstudio2012-mantenimientos
 
284
284284
284
 

Mais de Desarrollo Escuintla

Mais de Desarrollo Escuintla (8)

Creación de un servicio RESTful utilizando Java y WildFly -I PARTE-
Creación de un servicio RESTful utilizando Java y WildFly -I PARTE-Creación de un servicio RESTful utilizando Java y WildFly -I PARTE-
Creación de un servicio RESTful utilizando Java y WildFly -I PARTE-
 
Tutorial consumir DLL C++ en C#
Tutorial consumir DLL C++ en C#Tutorial consumir DLL C++ en C#
Tutorial consumir DLL C++ en C#
 
FriendlyARM Mini2440 Ubuntu 10.04.4
FriendlyARM Mini2440 Ubuntu 10.04.4FriendlyARM Mini2440 Ubuntu 10.04.4
FriendlyARM Mini2440 Ubuntu 10.04.4
 
NReports -Diseñador y Generador de Informes-
NReports -Diseñador y Generador de Informes-NReports -Diseñador y Generador de Informes-
NReports -Diseñador y Generador de Informes-
 
Tutorial usando FIBplus en Report Manager
Tutorial usando FIBplus en Report ManagerTutorial usando FIBplus en Report Manager
Tutorial usando FIBplus en Report Manager
 
Utilizando outlook para revision de correo electronico
Utilizando outlook para revision de correo electronicoUtilizando outlook para revision de correo electronico
Utilizando outlook para revision de correo electronico
 
Vulnerabilidad thomson
Vulnerabilidad thomsonVulnerabilidad thomson
Vulnerabilidad thomson
 
Vulnerabilidad thomson
Vulnerabilidad thomsonVulnerabilidad thomson
Vulnerabilidad thomson
 

Último

🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
pvtablets2023
 

Último (20)

EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptxEL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnn
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 

Lazarus

  • 1. Lazarus Free Pascal Compiler Figura No. 1. Licencia: GPL/LGPL Lazarus son las bibliotecas de clase para Free Pascal que emulan Delphi. Free Pascal es un compilador (L)GPL que se ejecuta en Linux, Win32, OS/2 68K y más. Free Pascal está diseñado para ser capaz de comprender y compilar la sintaxis de Delphi, que por supuesto es POO. Lazarus es la parte que falta del puzzle que te permitirá desarrollar programas al estilo Delphi en todas las plataformas especificadas. El IDE se convertirá en una herramienta RAD como Delphi. Según vaya creciendo Lazarus necesitaremos más desarrolladores. Official: http://sourceforge.net/projects/lazarus/ Tutorials: http://lazarus-ccr.sourceforge.net Tutorial desarrollado por: Universidad Mariano Gálvez Facultad de Ingeniería en Sistemas 0908-01-10469 José de Paz jose.depaz@gmail.com
  • 2. Lazarus IDE Figura No. 2. La IDE (Figura No. 2) de Lazarus esta distribuida por los siguientes componentes: 1. Paleta de componentes 2. Inspector de objetos 3. Editor de código fuente 4. Formularios 5. Mensajes del compilador Palete de Componentes Inspector de objetos Editor de codigo fuente formularios Mensajes del compilador
  • 3. Primer Proyecto Para crear nuestro primer proyecto debemos ir a la barra de menús y seleccionar en Proyecto->Nuevo proyecto: Figura No. 3. Luego, seleccionar en “Aplicación” y luego click en el botón “Crear”. (Figura No. 3) Figura No. 4. Ahora, cuando Lazarus se inicia, carga un proyecto por default, en este caso estamos creando un nuevo proyecto, y hacemos click en el botón “No”. (Figura No. 4.). Automáticamente se crea un proyecto, el cuál contiene un formulario llamado “Form1”, el cual puede observarse en la ventana “Inspector de Objetos”. Ahora vamos a agregar un botón de comando (TButton, Figura No. 5.), para esto nos vamos a la paleta de componentes y nos situamos en la pestaña “Standard” y seleccionamos el componente; hay dos formas de agregarlo: 1. haciendo doble click sobre él 2. haciendo click sobre él y dibujarlo a nuestra medida en el formulario. Figura No. 5.
  • 4. Después de haber agregado el botón, vamos a modificarle la propiedad “Caption”, y le insertamos algo como esto “Presionar”, tener en cuenta que debemos tener seleccionado el botón y no el formulario. Figura No. 6. Ahora vamos a codificar el evento “OnClick” del botón, haciendo doble click sobre él o bien seleccionando el evento desde el “Inspector de Proyectos”, en la pestaña “Eventos”. Haciendo esto, se mostrara la venta del “Editor de código fuente” y se creara un evento para el TButton Figura No. 7. y agregamos la siguiente línea de código, tal como se muestra en la figura No. 7., listo presionamos la tecla “F9” para ejecutar el proyecto, o bien en la barra de menús “Ejecutar->Ejecutar”, luego de presionar el botón “Presionar”, debemos observar lo siguiente: Figura No. 8. Terminando, debemos guardar nuestro proyecto y formulario, para estos nos vamos a la barra de menús y hacer click en “Proyecto->Guardar Proyecto”.
  • 5. Conexión a base de datos Lazarus dispone de componentes para conexión a base de datos, la cual encontramos en la pestaña “SQLdb” de la paleta de componentes. (Figura No. 9) Figura No. 9. Tiene componentes de conexión a las siguientes base de datos: TIBConnection (FireBird / Interbase) TODBCConnection (conexión ODBC) TOracleConnection (Oracle ) TMySQL40Connection (MySQL Server 4.0) TMySQL41Connection (MySQL Server 4.1) TMySQL50Connection (MySQL Server 5.0) TPQConnection (PostgreSQL) Para este ejemplo, utilizaremos MySQL Server 5.0, y la base de datos que trae por default llamada “test”, en la cual crearemos la tabla “emple” y le ingresaremos algunos valores (Figura No. 10). Figura No. 10.
  • 6. Ahora vamos a crear un proyecto, en el cual tendremos un formulario con un datagrid (TDBGrid), en él cuál mostraremos el contenido de la tabla llamada “emple”. Para esto necesitamos agregar los siguientes componentes al formulario (Figura No. 11): TMySQL50Connection TSQLTransaction TSQLQuery TDatasource TDBGrid Figura No. 11 El componente “Datasource”, lo encontramos en la pestaña “Data Access”, y el componente “DBGrid” en la pestaña “Data Controls”; de paleta de componentes. Ahora, vamos a configurar algunas propiedades de los componentes para que podamos acceder a la BD y así mismo extraer los registros y mostrarlos en el TDBGrid. DatabaseName: test HostName: localhost User: root Password: <tu clave de acceso a la base de datos> Connected: True Transaction: SQLTransaction1 Database: MySQL50Connection1 Database: MySQL50Connection1 SQL: select * from emple; Transaction: SQLTransaction1 Active: True En el caso de la propiedad SQL, debemos abrir el “Diálogo Editor de Strings” cuando estemos situados en la propiedad “SQL”, y luego agregar la consulta SQL y presionar el botón “Ok” DataSet: SQLQuery1 DataGrid1 DataSource: Datasource1
  • 7. Al momento de cambiar la propiedad “DataSource” del componente “DBGrid1”, se mostrara el contenido de la consulta SQL, esto nos quiere decir que todo esta bien, y solo resta presionar “F9” para ejecutar el proyecto, o bien en la barra de menús “Ejecutar->Ejecutar”. (Figura No. 12) Figura No. 12. Ahora, detenemos el proyecto y vamos a agregar un botón (Figura No. 13) al formulario y le modificamos la propiedad “Caption” por “Actualizar”, la función del mismo es para actualizar los registros en el DBGrid, y para probarlo, vamos a codificar el evento “OnClick” haciendo doble click sobre él, y le agregamos el siguiente código: (Figura No. 14) Figura No. 13 Figura No. 14 ejecutamos la aplicación, luego insertamos un registro en la tabla emple (Figura No. 15), luego tendremos que presionar el botón para que actualice la información (Figura No. 16). Figura No. 15.
  • 8. Figura No. 16. Si insertamos un registro y luego presionamos el botón, tendríamos que ver el nuevo registro en el DBGrid. Insertar un registro desde el formulario Para llevar a cabo la inserción de registros desde el formulario, vamos a agregar los siguientes componentes: tres etiquetas (TLabel) y tres cuadros de texto (TEdit), estos componentes se encuentran en la pestaña “Standard” de la paleta de componentes, y los organizamos en el formulario (Figura No. 17)., a los TLabel, les cambiamos la propiedad “Caption” por la correspondiente (CODIGO, NOMBRE, APELLIDO), y a los TEdit les borramos la propiedad “Text” que trae por default. Figura No. 17. Ahora, vamos a modificar el código del evento “OnClick” del botón “Actualizar”, para esto hacemos doble click sobre él y agregamos el siguiente código (Figura No. 18): Figura No. 18.
  • 9. Ahora vamos a ejecutar el proyecto, presionamos la tecla “F9” para ejecutar el proyecto, o bien en la barra de menús “Ejecutar->Ejecutar”, debemos observar lo siguiente (Figura No. 19): Figura No. 19. Listo, insertaremos los siguientes valores (Figura No. 20). y después presionamos el botón “Actualizar”, y tendríamos que ver el registro en el DBGrid: Figura No. 20. Ahora, debemos borrar el contenido de los cuadros de texto (TEdit), y mostrar un mensaje diciendo que el registro ha sido guardado, detenemos el proyecto y agregamos el siguiente código (Figura No. 21): Figura No. 21
  • 10. Validando la entrada de datos Debemos agregar un componente TSQLQuery y configurar las siguientes propiedades: Database: MySQL50Connection1 Transaction: SQLTransaction1 Ahora, lo que tenemos que validar es la entrada de datos en: Código = números mayores a cero y que no exista el registro en la base de datos Nombre = que sea mayor o igual a tres caracteres Apellido = que sea mayor o igual a tres caracteres Para la validación del código, vamos a convertir el contenido del Edit1 (Text) a entero y luego con un if, haremos la condición para ver si es mayor a cero; para la conversión (cast), vamos tomar en cuenta si se produce alguna excepción, utilizando Try --> Except: Figura No. 21 Según la figura No. 21; vamos a crear una función llamada Entero, para esto nos vamos al Editor del código fuente y después de implementation agregamos el código según la figura. La función recibe como parámetro un String y nos devuelve un valor booleano; convierte el valor recibido a entero y luego condiciona si el valor es mayor a cero, devolviendo como resultado True si esto se cumple, y False si hay error de conversión o si el valor es menor a cero. Luego vamos a modificar el código del evento OnClick del botón Actualizar, quedando como en la figura No. 22; en donde el SQLQuery2 lo utilizamos para buscar el código a grabar, si existe el código, el valor de SQLQuery2.RecordCount será mayor a cero. También se define la variable código de tipo Boolean, la cual recibe el valor devuelto por la función Entero(Edit1.Text).