0% encontró este documento útil (0 votos)
25 vistas11 páginas

Introducción a la Programación en Delphi

1) El documento introduce conceptos básicos de programación orientada a objetos y el lenguaje Delphi. 2) Explica que Delphi es un entorno de desarrollo integrado que utiliza el lenguaje Pascal orientado a objetos y la librería de componentes VCL. 3) También presenta conceptos como formularios, objetos, propiedades, eventos y cómo trabajar con ellos en Delphi.

Cargado por

aaraon_franco
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas11 páginas

Introducción a la Programación en Delphi

1) El documento introduce conceptos básicos de programación orientada a objetos y el lenguaje Delphi. 2) Explica que Delphi es un entorno de desarrollo integrado que utiliza el lenguaje Pascal orientado a objetos y la librería de componentes VCL. 3) También presenta conceptos como formularios, objetos, propiedades, eventos y cómo trabajar con ellos en Delphi.

Cargado por

aaraon_franco
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TEORIA 1 Parte.

En esta seccin del curso vamos a conocer un poco el lenguaje de programacin, lo bsico para empezar a genera aplicaciones fciles. Que es un lenguaje de alto nivel y que es la orientacion a objetos? En programacin, nos encontraremos con 2 tipos de lenguajes, el de "Bajo" y el de "Alto" Nivel, se diferencian en lo proximos que esten al lenguaje maquina, entre los lenguajes de bajo nivel encontramos al Ensamblador, Delphi realmente no es un lenguaje, sino la IDE (Integrated Development Environment), osea el espacio de trabajo para Object Pascal, el cual es un lenguaje de programacion de alto nivel, Object Pascal como su nombre indica es Pascal orientado a objetos, un objeto es una coleccion independiente de estructuras, una clase alberga las estructuras de datos y rutinas de un objeto, en el caso de Delphi, los objetos se comunican mediante mensajes, asi pues cuando pulsamos con el raton sobre un boton, se produce un mensaje el cual desencadena un evento. Adems delphi utiliza la RAD (Rapid Application Development), que nos permite desarrollar nuestros programas de forma rpida y visual. Delphi controla por si solo el sistema de mensajes de windows, con lo cual no necesitaremos preocuparnos de capturar los mensajes que dicta windows para desencadenar un procedimiento. Los programas hechos en delphi se dividen en Formularios "Forms" que se corresponden con las distintas ventanas que tendra nuestro programa, para mostrar un formulario desde otro se ha de poner "[Link]" si quieres que tome el control y si quieres utilizar los dos indistintamente "[Link]", ademas de los forms un programa esta compuesto por distintos objetos (Etiquetas, botones...) todos ellos estan incluidos en la VCL... VCL Delphi utiliza una libreria de componentes llamada VCL (Visual Components Library) que nos brinda una serie de objetos (por ejemplo una combobox) y que nos da la posibilidad de utilizar los objetos sin necesidad de llamar a las distintas API de windows para que dibujen en pantalla el componente, podremos ademas manipular a nuestro antojo el componente, cambiandole las propiedades como el nombre, el caption o cosas asi..., adems de poder controlar de una manera muy facil los distintos eventos que podria generar. A la hora de trabajar con los componentes mediante codigo, la sintaxis es la siguiente: 1 El nombre del componente || 2 La propiedad con la que trabajaremos Curso Delphi By MrRidk (Teoria 1 Parte) Ej: [Link]; // Seleccionamos la propiedad Text del combo, que especifica el texto que contiene. Object Inspector

Se trata del Inspector de Objetos, gracias a l podemos cambiar de una manera rapida facil y visual las propiedades de los distintos objetos que vayamos insertando en el programa. Ademas y gracias a l podemos controlar de forma fcil los distintos eventos, para ver los posibles eventos de un objeto selecciona la pestaa "Events", y para poder modificar el evento haz doble click sobre el, ahora apareceras en una especie de editor de textos, se trata de la ventana de edicion, y es donde se escribe el codigo de nuestro programa, ahora veras que estas situado entre dos palabras clave "Begin" y "End", y justo encima "procedure [Link](Sender: TObject);". En delphi todas las lineas de comando acaban en ";" salvo algunas excepciones. Edit Window Tiene forma de editor de textos, en ella editaremos el codigo de nuestro programa, cuando editamos el codigo de un programa editamos el codigo de cada formulario, si nos centramos en un formulario veremos que en la edit window aparecen distintas secciones, cada una de ellas con distintos valores, estas secciones son: Uses: En ella especificamos los distintos modulos que cargara nuestro programa y que se incluiran en el ejecutable una vez compilado para que est tenga una independencia total del compilador, cuando insertamos un componente se aade a ella la clave para que se carge el modulo que permite acceder a ese componente, asi por ejemplo si aadimos un componente de la pestaa "Estandar" al ejecutar el Curso Delphi By MrRidk (Teoria 1 Parte) programa se aade automaticamente la palabra "StdCtrls", pero hay otros casos en los que no se aade automaticamente, por ejemplo cuando queremos utilizar una determinada API de windows como puede ser ShellExecute([Link],'open','programa','parametros',nil,SW_ShowNormal); con la que conseguimos ejecutar una aplicacion externa desde delphi, deberemos pues aadir la palabra "ShellApi" para que nuestro programa pueda utilizar esa API Type En esta seccion se especifican los distintos objetos con su correspondiente clase (Label1:TLabel), y los distintos procedimientos que se ejecutaran en nuestro programa. Al final de ella veras 2 palabras clave "Private" y "Public", que sirven para definir variables privadas o publicas A continuacion veras otra palabra clave "Var" que sirve para definir variables en cualquier sitio, si se pone en ese lugar, definiremos una variable que puede ser utilizada en todos los procedimientos del programa, si la definimos dentro de un procedimiento solo se podra usar en l. Operadores aritmeticos, logicos y relacionales..

En este apartado del capitulo aprenderemos como identifica los operadores, delphi en relacion a otros lenguajes (VB Y C++), un operador sirve por ejemplo para hacer que el programa divida un n entre otro. Operador Delphi C++ Visual Basic Menor que... a < b a < b a < b Mayor que... a > b a > b a > b Igual que... a = b a = b a = b Desigual... a <> b a != b a <> b Menor o igual... a <= b a <= b a <= b Mayor o igual... a => b a => b a => b Asignacion... a := b a == b a = b Comparacion... a = b a = b a = b Division... a / b a / b a / b Multiplicacion... a * b a * b a * b Comentarios. En delphi como en cualquier lenguaje de programacion existe los comentarios, estos proporcionan la posibilidad de aadir a las lineas del programa, pequeas anotaciones sobre como va el diseo del programa, por ejemplo podemos poner en una linea un comentario diciendo que es lo que sigue fallando para que al retomar el trabajo al dia siguiente sepamos por donde empezar, en delphi existen 2 tipos principales de comentarios. Y son: Los que empiezan por "//" sirven para comentar una linea. y los que estan delimitados asi: "{}" Sirven Curso Delphi By MrRidk (Teoria 1 Parte) para poner un parrafo de comentario. Bueno en el siguiente capitulo seguiremos con la teoria, pero no te preocupes si te parece demasiada, es que sino tienes unos conocimientos basicos no podras empezar a programar por ti mismo. Curso Delphi By MrRidk (Teoria 1 Parte) TEORIA 2 Parte.

En este capitulo continuaremos con la parte de teoria del curso, asi pues sigamos conociendo un poco mas sobre el lenguaje de programacin Object Pascal (Delphi). Variables Una pieza clave en todas las aplicaciones son las variables y el buen control de estas. Una variable puede contener varios tipos de datos y pueden ser modificadas en todo el programa si las declara como globales, o bien por todos los formularios (Si las declara publicas) o en un determinado evento (Si las declara en ese evento). Para definir una variable publica has de remitirte a la seccion "Public" que encontraras abajo de "Type" y utilizar la siguiente sintaxis: Variable : Tipodevariable; Si lo que quiere es definir una constante que no vaya a variar en todo el programa utilice esta sintaxis: Const Variable: Tipo = Valor; Pero si lo que quiere es definir variables que puedan ser modificadas a lo largo del programa, deber saber que en delphi existen varios tipos de variables, las ms importantes son: String Cadena de texto Integer Nmero Byte Byte de un archivo Boolean Es una afirmacin o una negacin (True o False) Date Una Fecha Time Una hora Char Carcter. Variant La variable comodn, puede almacenar todo tipo de datos. Convertir Variables En delphi al contrario que en visual basic necesitaremos definir las variables y ademas utilizarlas solo con los datos apropiados, asi por ejemplo en una variable tipo integer (N Entero) no podemos situar el texto de un edit, aunque este edit solo contenga nmeros, para permitir esto, deberemos convertir el contenido del edit de string a integer, y eso se hace con la estructura: StrToInt('Cadena');. A continuacion os pongo una tabla con las conversiones mas utilizadas... Curso Delphi By MrRidk (Teoria 2 Parte) IntToStr Convierte un Integer a Texto IntToHex Convierte un Integer a Hexadecimal StrToInt

Convierte una cadena de texto a Integer StrToDate Convierte texto en fecha StrToTime Convierte texto en fecha DateToStr Convierte una fecha a Texto TimeToStr Convierte la hora en texto Propiedades de los objetos Es importante conocer tanto los eventos propios de cada objeto como sus propiedades, por eso aqu os voy a mostrar una serie de propiedades generales que creo se adaptan a todos los objetos posibles. Caption Especifica el titulo del objeto o el texto que contendra Cursor Especifica el cursor que se mostrara cuando el ratn este sobre ese objeto Default(Botones) Especifica si ese botn Ser el que se ejecute solo con dar un enter o no. Enabled Especifica si el objeto estar accesible al usuario Font Pos eso la fuente del texto de ese objeto Height El alto del objeto Width El ancho del objeto Hint El texto de explicacin que mostrara cuando el ratn este sobre l ShowHint Mostramos o no la hint? Visible Especifica si Ser visible o no. Eventos Un evento es la accion que se desencadena tras por ejemplo pulsar un boton, los eventos estan controlados por los mensajes que emite windows, asi por ejemplo cuando pulsamos un boton, se produce un mensaje, el cual es recibido e interpretado por nuestro programa que hace que se desencadene el evento al que hace referencia ese mensaje. Algunos de los eventos mas comunes y presentes en casi todos los objetos son: OnCreate Es el que se produce al crear el objeto OnCloseQuery Es el que se produce al cerrar la aplicacin OnDestroy Se produce al destruir el objeto OnKeyPress Se produce al presionar una tecla sobre el objeto en el que estemos Curso Delphi By MrRidk (Teoria 2 Parte) OnChange

Se produce al cambiar alguna cosa del objeto (propiedades, contenido....) OnClick Se produce al hacer click sobre el objeto. OnEnter Se produce al situar el foco en un objeto OnExit Se produce cuando el objeto pierde el foco Aunque luego cada objeto contiene sus propias propiedades y sus propios eventos caracteristicos de las acciones que el componente realize. Procedures y Funciones Los procedimientos y las funciones son rutinas que se encargan de ejecutar una determinada accion, asi por ejemplo podemos crear un procedimiento que se encarge de elevar a mayusculas un texto, y luego llamarle para que convierta el texto que queramos. Procedure ElevaMayusculas(Texto:String); // Definimos el procedimientoElevaMayusculas, con el argumento texto. begin Uppercase(texto); // Elevamos a mayusculas el argumento de la funcion (texto) end; {Y para llamarla en cualquier parte del programa haremos algo asi} ElevaMayusculas ('mrridk'); // Elevamos a Mayusculas el texto 'mrridk'. Este tipo de estructuras es util para realizar determinadas acciones que se ejecutaran una y otra vez a lo largo del programa. Condiciones En casi todos los programas se utilizan condiciones, es decir: "Si algo se cumple que haga algo, sino otra cosa";Su sintaxis es realmente sencilla (casi intuitiva): If Condicin then begin // La condicin Cdigo // El cdigo que ejecutara si se cumple la condicin end else // Sino se cumple la condicin Alternativo // Cdigo que hace si la condicin no se cumple Otra forma de expresar las condiciones es: 'case of', lo que hace es seleccionar un identificador y ver que valores toma y en relacion a ello optar por hacer algo o hacer otra cosa, este tipo de condicion no acepta como identificador ni como valores a cadenas de texto, su sintaxis es la siguiente: Curso Delphi By MrRidk (Teoria 2 Parte) CASE OF case Identificador of // Empezamos el bucle 1 : begin Showmessage ('Hola'); end; // En caso de que tome el valor 1, muestra un mensaje diciendo hola. 2 : begin Showmessage ('Adios'); end; // En caso de que tome el valor 2, muestra un mensaje diciendo adios. end; // Acabamos Bucles Un bucle sirve para decirle al programa que ejecute cierta operacin mientras una condicin se cumple. Los tipos de bucles ms importantes son: While, For, Repeat-UntilSus sintaxis son estas:

FOR For I:= 0 to 100 do begin // Desde el contador (i) igual a 0 to 100 (si fuera downto ira para abajo) Cdigo; // El cdigo que se ejecutara... End; // Acabamos el bucle. WHILE While Condicin do begin // Mientras se cumpla la condicin... Cdigo; // El codigo que se ejecutara... End; // Acabamos el bucle. REPEAT-UNTIL Repeat // Repite... V := 1 + v; // Este codigo Until // Hasta v > 100; // Hasta que v > 100 Mensajes de informacion y/o Error. En delphi existen basicamente 2 tipos de mensajes, el messagebox , que da una informacion y luego nos permite elegir que hacer, y el ShowMessage que unicamente muestra la informacion. Su sintaxis es la siguiente: MessageBox: Curso Delphi By MrRidk (Teoria 2 Parte) Var Button: Integer; // Definimos una variable que ser la que albergue la respuesta del usuario Begin // Comenzamos Button:= [Link] ('Texto', 'Titulo', MB_YesNo + MB_IconInformation); // Creamos el mensaje... If button = IDYes then begin // Si ha pulsado Yes tonces.... Codigo // El codigo... end else // Sino... If Button = IDNo then begin // SI ha pulsado NO tonces... Codigo end; // Acabamos. ShowMessage: ShowMessage('Texto'); Bien y con esto se acaba la seccion de teoria pura y dura, a partir de ahora trataremos de aprender mediante ejemplos practicos en los que pondre el codigo fuente con comentarios al margen para que queden bien explicados. Curso Delphi By MrRidk (Teoria 2 Parte) PRIMER PROGRAMA ( HOLA MUNDO !!!) Como es costumbre, todos los cursos comienzan con un simple programa que muestra en pantalla el mensaje 'Hola Mundo', y este curso tambien hara algo de eso. Lo que trataremos sera de mostrar un mensaje en pantalla que diga Hola Mundo al pular un boton, como ves nada del otro mundo para un autentico genio como t. :-D.

Como ya se comento en el 2 Capitulo de teoria en delphi existen basicamente 2 tipos de mensajes el Messagebox y el Showmessage, en este programa utilizaremos el ShowMessage. Ahora has de pensar un poco, Donde coloco el codigo?, bien, queremos que se muestre al pulsar un boton, y si te has leido la teoria, sabras que eso lo controla un evento el OnClick, asi pues vamos a editar el codigo de ese evento, vete al Object Inspector a la pestaa events, localiza el OnClick y da doble click sobre l, ahora estas en la Edit Window, entre un Begin y un End, como sabras todos los eventos y casi todas las estrucutras estan delimitadas entre un Begin y un End, cada begin requieree un end y cada end un begin, ahora vuelve a pensar Cual es el codigo que debere poner? bien si te has hecho esa pregunta vuelve al capitulo de teoria donde se esplicaban los mensajes, el codigo es muy simple, la estructura de un ShowMessage solo que como argumento pondremos Hola, Mundo !!!, asi pues nuestro primer programa se reduce a esta linea: Showmessage (' Hola, Mundo !!!'); Y con eso ya hemos acabado, ahora ejecuta el programa, dale al boton y observa el mensaje. Ala!!! ya eres un programador de verdad, ahora si quieres mejorar continua con el curso... Curso Delphi By MrRidk ( Hola, Mundo !!!) KONVERTOR En este capitulo haremos nuestro primer programa serio, se tratara de un konvertor de monedas, que trabajar con 3 monedas entre si, utilizaremos la condicion case of, ya que para este tipo de cosas es lo ms facil y rapido. Antes que nada disea una interface como esta: Bien como ya especifique en el 1er capitulo de la teoria, la condicion case of es facil y rapida, ya que hay que escoger un identificador en este caso el index del combobox, que especifica que item esta seleccionado y ver que valor tiene en un determinado momento y en base a ese valor, elaborar una respuesta u otra. Asi pues un posible codigo fuente podria ser el siguiente: var valor : variant; // Definimos la variable que contendra el valor del edit begin valor := [Link]; // Asignamos el valor que el usuario a metido para convertir. case [Link] of // Empezamos a ver que queremos convertir 0 : Begin // SI es pesetas, ya que el item pesetas tiene el valor index = 0, pq es el 1er item de la lista Case [Link] of // Empezamos a ver en que quermos convertir 0 : Begin Showmessage('Escoga Monedas Distintas'); end; // Ya que intentamos convertir pesetas en pesetas damos error 1 : begin [Link] := valor * '0,00601'; end; // Convertimos en euros (1) 2 : begin [Link] := valor * '0,00532'; end; // Convertimos en Dolares (2) Curso Delphi By MrRidk (Konvertor)

[Link] (1 of 2) [02/07/2001 17:35:53] end; // Acabamos con el de convertir pesetas 1 : begin // Empezamos con el de convertir euros case [Link] of // Empezamos a ver en que queremos convertir 0 : begin .... end; // Convertimos en pesetas Y bueno lo demas lo dejo de tu cuenta, la estructura supongo que estar bien esplicada asi que el resto tomatelo como un ejercicio el acabarlo Bueno, nuestro programa convierte a la perfeccion, pero que ocurre en el momento de cambiar el item seleccionado de una comobox? Nada !!, ahi esta la cuestion, que no ocurre nada, deberia cambiar las edit que muestran que convertir y en que convertir, pero de momento eso no ocurre. Bien, ahora piensa un poco Cuando deben de cambiar? efectivamente al cambiar el contenido del combobox, asi pues en el evento OnChange del Combobox, y Que codigo debemos poner?, un codigo que ponga como caption del label el contenido del item seleccionado y eso se consigue de la siguiente manera: [Link]:= [Link][[Link]]; // El texto de la label1 ser el del item seleccionado de la combobox1 Y ya esta, ahora sigamos con los siguientes botones, en el de salir, vas a poner "Close" que lo que hace es llamar al evento OnCloseQuery del form, osea al que cierra la aplicacion. Y con esto y un bizcocho hasta el proximo capitulo (jeje, que mal se me dan las rimas :-?). Curso Delphi By MrRidk (Konvertor) EDITOR DE TEXTOS 1 PARTE En esta serie de 2 capitulos, aprenderemos como crear paso a paso un editor de textos facilito, como el notepad, y con las opciones basicas requeridas en un editor de textos. Nuestro editor de textos utilizara los cuadros de dialogo estandares de windows, es decir el cuadro predeterminado de abrir un archivo o el de buscar un texto, que estan presentes en casi todos los programas. Los encontraras en la paleta "Dialogs", y para ejecutarlos se utiliza la propiedad ".Execute" aunque ya veremos como se utiliza cada uno... Bien, dicho esto disea una interface como esta: El TMemo lo queremos por que es l el encargado de contener la parte del programa donde editaremos el texto y dems..El MainMenu lo queremos para dar la posibilidad de tener un menu donde estarn las opciones que puede hacer el [Link] de comenzar con el codigo he de decirte que existen una serie de propiedades en el Memo que indican la posicion en la que esta el cursor (SelStart), la cantidad de texto seleccionado (SelLength) la cantidad de texto (LenText).Bien empecemos con la opcin de abrir un archivo, para ello utilizaremos el dialog OpenDialog y el cdigo es el siguiente Curso Delphi By MrRidk (Editor 1 Parte)

If [Link] then begin // Si se ha ejecutado correctamente tonces [Link] ([Link]); // El texto del Memo lo carga del archivo del Opendialog end; // Se acabo Ahora con la opcin de guardar el archivo, como veras dentro un rato es prcticamente igual. If [Link] then begin // Si se ha ejecutado correctamente tonces [Link] ([Link]); // El texto del Memo lo guarda al archivo del Savedialog end; // Se acabo Sigamos con el menu del Archivo, en todo Editor de textos ha de haber la propiedad de crear uno nuevo no? bueno pos con delphi es as de fcil: [Link]; Que fcil Verdad? bueno sigamos ahora con la opcin de imprimir, [Link] ('My Document'); Sigamos con el cdigo del programa la opcin de deshacer: [Link]; Ahora con las opciones de cortar, copiar, pegar y seleccionar todo: [Link]; // Corta [Link]; // Copia [Link]; // Pega [Link]; // Selecciona Todo Curso Delphi By MrRidk (Editor 1 Parte) Muy bien ya tenemos el menu de Edicion al completo, pero claro los botones de Copiar Cortar y Pegar siempre estn asequibles aunque no haya texto seleccionado, Cmo evitarlo? En el OnClick del Item Edicion del Menu pones este cdigo.. var seleccin : Boolean; // Definimos una variable booleana (si o no) begin if [Link] <> 0 then begin // Si hay algo seleccionado Seleccion := true; // La variable se convierte en true end else // sino Seleccion := false; // La variable es false [Link] := Seleccion = true; // Los items estan disponibles cuando la variable es true [Link] := Seleccion = true; // Los items estan disponibles cuando la variable es true [Link] := Seleccion = true; // Los items estan disponibles cuando la variable es true end; // Acabamos Bueno y con esto doy por terminado este capitulo, Impaciente por saber como acabara? pos eso lo sabremos en el siguiente capitulo... Curso Delphi By MrRidk (Editor 1 Parte) EDITOR DE TEXTOS 2 PARTE En esta segunda parte acabaremos de rematar el editor de textos, aunque casi todo el trabajo ya esta hecho... Empecemos con el men de opciones. En el Onclick del item Buscar pon esto:

[Link]; Demasiado fcil no?, bueno pos ahora tendrs que controlar el evento OnFind del FindDialog y poner este cdigo: var FoundAt: LongInt; // Definimios la variable de donde se ha encontrado StartPos, ToEnd: Integer; // Definimos las variables de comienzo y final.. begin with Memo1 do // Cogemos el Memo para trabajar con el begin if SelLength <> 0 then // Si no estamos al principio del texto.. StartPos := SelStart + SelLength; // Comenzamos desde donde estemos else // sino StartPos := 0; // Comenzamos al principio ToEnd := Length(Text) - StartPos; // Definimos la longitud desde el comienzo hasta el final FoundAt := FindText([Link], StartPos, ToEnd, [stMatchCase]); // Buscamos el texto con los datos que hemos calculado if FoundAt <> -1 then // Si hemos encontrado algo... begin SetFocus; // Colocamos el cursor alli SelStart := FoundAt; // Comenzamos a seleccionar donde lo hay encontrado SelLength := Length([Link]); // Y seleccionamos la longitud del texto a buscar end; end; end; // Acabamos. Bien una vez solucionado y entendido el comando de buscar pasamos a la opcin de cambiar la [Link] se trata de trabajar con un dialogo de Windows ya veras que fcil e intuitivo es esto: Curso Delphi By MrRidk (Editor 2 Parte) If [Link] then begin // SI se ha ejecutado correctamente el dialogo [Link] := [Link]; // Cambiamos la fuente end; // Acabamos Y ahora el del color del fondo del Memo, como vas a ver es casi igual...: If [Link] then begin // SI se ha ejecutado correctamente el dialogo [Link] := [Link]; // Cambiamos el color end; // Acabamos Bueno y con eso acabamos del todo el menu de opciones. Y ahora? pos ahora vamos con la ayuda que nos dar la posibilidad de ver un formulario nuevo(el tpico about).Para ello en el OnClick pones esto: [Link]; // Mostramos de una forma 'modal' la ventana del about Y con esto ya hemos acabado el editor de textos, veras como preferiras usar el tuyo antes que el de micro$oft...

También podría gustarte