P. 1
Manual de Delphi 7

Manual de Delphi 7

|Views: 6.137|Likes:

More info:

Published by: Ricardo E. Jasso Ponce on Nov 08, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

08/09/2013

pdf

text

original

Sections

  • Sentencias de control
  • Mensajes en Delphi
  • Ficha Standar
  • Ficha Additional
  • Ficha System
  • Bases de Datos
  • Ficha Data Controls
  • Ficha BDE
  • Database DeskTop
  • DataSource

Manual Básico Borland Delphi 7

Manual Delphi

Ricardo E. Jasso Ponce

Entorno de Desarrollo
El entorno de desarrollo, también conocido como IDE, se muestra al iniciar Delphi integrando todas las herramientas necesarias (Editor de código, Editor de imágenes, Depurador, Herramientas de conexión a bases de datos, fichas de componentes, etc.) para desarrollar nuestras distintas aplicaciones. En la siguiente figura se muestra su entorno.

Menú Principal . . . En él, Se puede realizar casi todo desde los diferentes submenús como definir las opciones de compilación, personalizar las fichas de componentes o agregar nuevas, guardar o abrir proyectos, etc., es necesario revisarlo antes de comenzar. Barra de Herramientas . . . Esto es solo un conjunto de botones de acceso rápido a las diferentes opciones del menú, lo cual nos facilita ejecutar las acciones más utilizadas de una manera más rápida. Dando un Click sobre ellas con el botón derecho del ratón podremos configurarlas. A continuación muestro la función de alguno de ellos.

2

Manual Delphi

Ricardo E. Jasso Ponce

Fichas de Componentes . . . Son las que dan Acceso a los componentes que forman la biblioteca de componentes visuales conocida también como VCL ( Visual Component Library) y se encuentra dividida en varias categorías según las funciones que realizan. Cada paleta incluye en su parte izquierda el botón puntero que no es un componente sino que su función es parecida a la de cualquier programa gráfico sirve para deseleccionar componentes seleccionados, etc. Para insertar un componente en el formulario solo selecciona el componente a insertar después pulsa sobre el formulario y arrastra el ratón para definir su tamaño, en caso que no lo arrastres Delphi automáticamente le pone su tamaño predeterminado. Otra forma de insertar los componentes es dando doble Clic sobre el componente a insertar en la ficha de componentes. Formulario o Form . . . Es la pieza principal del diseño de las aplicaciones, es el contenedor final de otros componentes que finalmente constituirán nuestra aplicación. El formulario es un componente más de Delphi por lo cual tiene propiedades y eventos los cuales se pueden alterar y trabajar con ellos. Para aquellas personas que emigran de lenguajes de programación lineal como C o Clipper tengan en cuenta que ustedes utilizaran tantos formularios como su aplicación los requiera.

2

Manual Delphi

Ricardo E. Jasso Ponce

Inspector de Objetos u Object Inspector. Este nos permite modificar las propiedades y respuestas a sucesos o eventos de los componentes, sus datos muestran el estado del componente seleccionado o del mismo formulario. Está dividido en dos partes en forma de pestañas o solapas una que dice Properties y Events. A continuación se muestra las propiedades del formulario. Existen propiedades que tienen un signo de más, eso significa que son contenedoras de otras opciones. A continuación se explican algunas de las propiedades más comunes del formulario.

BorderIcons: Tiene cuatro opciones mismás que reciben un valor falso o verdadero (True o False) de las cuales dos son muy útiles y empezaremos por la de biMinimize, esta opción esta en True por default y permite que nuestro formulario se pueda minimizar.

2

Manual Delphi

Ricardo E. Jasso Ponce

biMaximize por default está en True y permite que nuestro formulario se pueda maximizar en tiempo de ejecución. BorderStyle: Despliega una lista con los diferentes estilos de bordes para el formulario. Caption: Esta es una propiedad importante debido a que es aquí en donde escribimos el texto de la barra de titulo del formulario, es alfanumérica y por default tendrá el nombre del formulario (Form1 en este caso).. Name: Es el nombre del componente, por Default aparecerá Form y el numero de formulario, en este caso es Form1, este se puede modificar y ponerle un nombre que nosotros queramos has de cuenta que el formulario es una variable y la propiedad Name tiene el nombre de esa variable. Position: Despliega una lista en la cual muestra las diferentes posiciones sobre las cuales podemos mostrar nuestro formulario al momento de correrlo. WindowsSatate: Despliega una lista de valores WsNormal, WsMinimized, WsMaximized, las cuales alteran nuestro formulario al momento de correrlo es decir si elegimos la de WsMaximized mostrara maximizado nuestro formulario. Para dimensionar nuestro formulario basta con alterar las propiedades Height y Width aunque también se puede realizar posicionando sobre los bordes del formulario el puntero del ratón y arrastrarlo hasta lograr la dimensión que queramos. Nota: Existen Propiedades que son iguales para varios componentes como Caption, Font, Visible, etc. Ahora mostraré los eventos del formulario. Los eventos son sucesos que detecta nuestro formulario y según el suceso detectado se ejecuta su código, existen varios eventos, explicaré solo algunos, de cualquier forma durante el curso se explicarán más. Para introducir el código basta con dar doble Click en la parte derecha del evento a utilizar y Delphi automáticamente nos crea el procedimiento de dicho evento y nos muestra el editor de código.

2

En la siguiente tabla se presentan las operaciones lógicas. Permite realizar todo tipo de operaciones comunes con operadores numéricos ya sean reales o enteros. . en la siguiente tabla se muestran los tipos de datos. Jasso Ponce Operadores Lógicos y Aritméticos Operadores Aritméticos. Operad or + * / Div Mod Operación Suma Resta Tipo Tipo Operando Resultado Integer Real Integer Real Integer Real Integer Real Integer Real Integer Real Integer Integer Multiplicació Integer n Real División División entera Resto Integer Real Integer Integer Operadores Lógicos. . Operador Operación Tipo Operando Tipo Resultado 2 . . La diferencia está en que las operaciones lógicas llevan la comparación de valores a nivel de bit y las operaciones booleanas realizan comparaciones verificando si una cierta expresión es verdadera o falsa.Manual Delphi Ricardo E. . Se dividen en dos categorías los lógicos y los booleanos. .

Producto lógico. Operad Operació Tipo Tipo or n Operand Resultad o o Not And Or Xor Negación. Desplazamiento bit a bit hacia la izquierda. Ricardo E. Los utilizamos para realizar comparaciones entre dos valores y a continuación se muestran en la siguiente tabla. . Or Exclusiva lógica. Desplazamiento bit a bit hacia la derecha. . Operador = <> Operación Igualdad. Desigualdad. Or Exclusiva a nivel de Bit. Suma a nivel de Bit. Boolean Boolean Boolean Boolean Boolean Boolean Boolean Boolean Operadores Relaciónales.Manual Delphi Not And Or Xor Shl Negación a nivel de Bit. Suma lógica. Producto a nivel de Bit. Tipo Resultado Boolean Boolean 2 . Jasso Ponce Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Shr Integer Integer La siguiente tabla muestra los operadores booleanos.

las operaciones que representan se ejecutan en cierto orden que están marcados por la precedencia de los operadores. . < . As + . Cuando se evalúa una expresión en la que aparecen combinados diferentes operadores. en este caso primero se multiplica y después se suma.. 2 . Ricardo E. Lo que significa que primero se evalúa lo que está dentro del paréntesis por ejemplo la siguiente operación valor:= 10 + (3*3). Cuarta > . por ejemplo -5 * 10 es lo mismo que tuviéramos (-5) * 10. Por ejemplo si se tuviera valor := 5 + 3 + 6. Or . es lo mismo que valor := (5 + 3) + 6.Manual Delphi < > <= >= Menor que. Shr . por ejemplo valor:= 5 * 3 + 10. / . A continuación se muestra una tabla con su precedencia. Mayor o Igual que. <> . Div . Segunda Mod . . Un operador que se encuentra entre dos operadores de precedencias diferentes se relaciona con el operador de precedencia mayor. <= . Shl . Operador @ . Xor Tercera Operadores de Adición Operadores Relacionales =. >= Existen cuatro reglas de precedencia que se deben de tomar en cuenta: • • • • Las expresiones encerradas entre paréntesis se evalúan antes de tratarlas como un único operando. Mayor que. Menor o Igual que. primero multiplica 3*3 y su resultado lo suma con el 10. . Un operando que se encuentra entre dos operadores iguales se relaciona con el de su izquierda. Jasso Ponce Boolean Boolean Boolean Boolean Precedencia de Operadores. And . Un operador unario siempre precede al operador binario. Not Precedencia Primera Categoría Operadores Unarios Operadores de Multiplicación * .

begin ShowMessage(nombre+FloatToStr(PI)).Manual Delphi Ricardo E. .FormCreate(Sender: TObject). irían entre el Procedure y el Begin. nombre : String. 2 . ShowMessage(nombre + FloatToStr(PI)).14. En Delphi las Variables se declaran con la palabra reservada Var. Como puedes ver utilizamos nuevamente la función ShowMesage () la cual me permite mandar un mensaje sencillo al usuario pero bueno se explicará más adelante en mensajes. De igual forma utilizo la función FloatToStr () la cual me permite convertir valores de tipo flotante a cadena. Jasso Ponce Declaración de Variables y Constantes CONSTANTES. nombre := 'Pablo '. NOTA: En Delphi las Asignaciones se realizan mediante:= como puedes observar.14 y nombre ='Pablo ' en el evento Oncreate del formulario. . var PI : Real. Se utilizan para representar lógicamente un valor que será utilizado repetidamente en nuestro programa y que no variará durante su ejecución.14. Para su declaración se utiliza la palabra reservada Const. nombre = 'Pablo '. end. Bien ya vimos como declarar constantes y variables ahora es necesario ver los tipos de datos soportados por Delphi. Si declaras constantes o variables dentro de algún procedimiento. Por ejemplo continuación declararé la constante PI = 3. end. const PI = 3. . Una variable es un valor perteneciente a un cierto dominio y puede variar durante la ejecución del programa. procedure TForm1. Variables. begin PI := 3.FormCreate(Sender: TObject). Por ejemplo realizaremos la misma función que las constantes pero ahora utilizando variables y el código quedaría así: procedure TForm1. .

7 * Real48 11-12 10Exp38 ± 5. 2Exp63-1 -2147483648 .. . más sin embargo una variable de tipo real si puede recibir un dato entero.. ± 1..1 19-20 ed * 10Exp4392 Comp -2Exp63 .0 * 10Exp-324 ...7 * Double 15-16 10Exp308 Extend ± 3. A continuación muestro una tabla con los tipos de datos enteros. 214 7483648 Formato 8 bits sin signo 16 bits sin signo 32 bits sin signo 8 bits con signo 16 bits con signo 32 bits con signo 64 bits con signo 32 bits con signo 32 bits sin signo Por defecto las operaciones aritméticas con valores enteros devolverán un valor entero. Tipos Reales . 25 0 .4 * 10Exp-4932 . ± 1. Son aquellos que representan números no decimales dentro de un rango y existen diferentes tipos de enteros clasificados según su rango. . 127 -32768 ... . Son adecuados para variables que albergan valores con una parte decimal.9 * 10Exp-39 ... 2147483648 0 . a continuación muestro una tabla con los diferentes tipos reales soportados por Object Pascal. . 4294967295 -128 .5 * 10Exp-45 . 2147483648 -2Exp63 .Manual Delphi Ricardo E.. hay que tener cuidado por que una variable de tipo entera no puede almacenar un dato de tipo real. 2Exp63 -1 19-20 Curren -9223372036854775808 . 65535 0 .. 32767 -2147483648 .. Tipo Single Rango de valores Dígitos Tamaño Significati en Bytes vos 4 6 8 8 10 8 8 ± 1. ± 1. Tipo Byte Word LongWord ShortInt SmallInt LongInt Int64 Integer Cardinal Rango de Valores 0 .4 * 7-8 10Exp38 ± 2.7 * Real 15-16 10Exp308 ± 5. ± 1. ± 3. 19-20 cy 9223372036854775807 2 .. Tipos Enteros ..0 * 10Exp-324 .. Jasso Ponce Delphi Soporta tipos de datos simples y tipos de datos compuestos pero por ahora nos enfocaremos a los simples..

. Tipos Booleanos . representan cantidades lógicas como verdadero o falso y en el Object Pascal existen cuatro que son: Boolean. El que se recomienda más es el tipo Boolean debido a que utiliza menos memoria. Los tipos de carácter están diseñados para albergar caracteres según un cierto código numérico que usualmente es el ANSI que mediante palabras de 8 bits representa hasta 256 caracteres. pero es solo para ilustrar su manejo muy simplemente. If Compadre = True then ShowMessage('Tu si eres mi compadre') Else ShowMEssage('Tu no eres mi compadre'). Tipo Boolean ByteBoolean WordBool LongBool Memoria Requerida en bytes 1 (Recomendado) 1 2 4 Se declaran como cualquier otra variable solo que el valor que pueden recibir es True o False. Tipo AnsiChar Carácter que contiene Un Caracter Ansi Memoria requerida en Bytes 1 2 . Bueno a continuación te muestro su tabla. begin Compadre := True. Jasso Ponce La declaración de variables reales utiliza exactamente la misma sintaxis que la explicada para los números enteros. .FormCreate(Sender: TObject).Manual Delphi Ricardo E. las otras existen para permitir la compatibilidad con otros lenguajes y el entorno de Windows. A continuación muestro su tabla. Ejemplo. . Este código se puso en el evento Oncreate del Formulario Ok. De hecho en el ejemplo anterior se declaro una variable de tipo Real. tu eres quien le darás una verdadera aplicación si tus problemás lo requieren. . ByteBool. Este es un tipo de dato muy sencillo pero igualmente utilizado. var Compadre : Boolean. Tipos de Carácter . Este fue un ejemplo inútil. procedure TForm1. Por lo pronto puedes experimentar cambiando la asignación de compadre a False. end. WordBool y LongBool.

var Nombre. Como puedes ver a diferencia de C el inicio de posiciones comienza en 1 y no en 0. . Como anteriormente se mencionó estas variables son parecidas a los arrays y podríamos accesar directamente a alguna posición de la variable por ejemplo si a la variable Nombre únicamente quisiera concatenarle la letra B de la Variable Apellido lo haría de la siguiente forma: Nombre := Nombre + Apellido[1]. 256 hasta 2GB. las asignaciones se hacen normalmente. la cual permite declarar arreglos de una o varias dimensiones Memoria Hasta GB. procedure TForm1. Estas existen como tipos predefinidos que albergan la concatenación de un determinado número de caracteres bueno es algo parecido a los arrays si así lo quieren ver. Existe la instrucción Array perteneciente a los datos compuestos. en Delphi las concatenaciones se hacen con el signo +. Jasso Ponce 2 1 WideChar Un Caracter Unicode Char Un Caracter Ansi Tipos Cadena de Caracteres . únicamente utilizan las comillas simples (') para indicarle que se trata de una cadena. En seguida muestro la tabla con los diferentes tipos. También conocidos como String. Nombre := Nombre + Apellido. ShowMessage(Nombre).Manual Delphi Ricardo E. Ok. 2 . Apellido : String. . Apellido := 'Bustos'. Nota: a diferencia de C y otros lenguajes. 2 a 256 Bytes. end. Carácter que Longitud Máxima contiene AnsiStrin ~2Exp31 AnsiChar g Caracteres ShortStri AnsiChar 255 Caracteres ng ~2Exp31 String AnsiChar Caracteres WideStri WideCha ~2Exp30 ng r Caracteres Tipo Te pongo un ejemplo para explicar su uso. Hasta 2GB.FormCreate(Sender: TObject). begin Nombre := 'Pablo '.

el código irá en el evento Oncreate del Form. Jasso Ponce Sentencias de control Todo programa esta constituido por decisiones y acciones que se ejecutan repetidamente en función del estado del programa y las sentencias de control. procedure TForm1. ShowMessage('Es mayor. Explicaré las más utilizadas. se ejecutará cuando la condición se cumple y Codigo2 cuando la condición no se cumple. Pueden anidarse tantas sentencias if como necesites. al cuadrado es: ' + IntToStr(numero)).. Para que quede más claro haremos un ejercicio más practico. son las que nos permiten hacer esas cosas. var numero : Integer. numero := random(20). Se preguntarán por que utilizo ese evento bueno pues por que todavía no les enseño como funcionan otros componentes. end 2 . La sintaxis seria como sigue: If Condicion Then Codigo1 Else Codigo2 Codigo1.FormCreate(Sender: TObject). if numero > 10 Then begin numero := numero * numero. Condicion If . begin Randomize(). Then : Las condiciones If sin duda son unas de las más utilizadas y permite condicionar la ejecución de un determinado código al cumplirse una determinada condición. Cuando los códigos a ejecutar tanto para el Else como para el IF son más de una instrucción se deben de poner entre un Begin y un End.Manual Delphi Ricardo E..

ShowMessage('Es menor. Aquí tienes su sintaxis. else ShowMessage('El numero es mayor que dos'). var numero : Word. Este es un ejemplo muy sencillo. Nota: En el ejemplo declaro una variable de tipo entero después utilizo la función Randomize() la cual inicializa el motor de generación de números aleatorios luego asigno a numero el resultado que devuelva random(20) la cual es una función que devuelve un valor aleatorio entre un rango previamente especificado que en este caso es un 20. genero un numero aleatorio de entre 4 dígitos incluyendo el cero. procedure TForm1. Este ejemplo es muy sencillo lo que hace es generar un numero aleatorio lo compara y si es mayor que diez manda un mensaje diciendo que es mayor y mostrando su cuadrado y en caso de que sea menor hace casi lo mismo solo que indica que es menor. end. end. Case Expresion Of Lista de constantes separadas por comás : Codigo. end. OF : Permite comparar una variable o expresión con un conjunto predeterminado de valores y ejecutar un código determinado de acuerdo al resultado de la comparación o expresión. begin Randomize(). end. Hay va un ejemplo para que quede más claro Ok..Manual Delphi Ricardo E. luego con el Case lo comparo hasta el 2 . 1: ShowMessage('El numero es un Uno'). Else Codigo por Defecto..FormCreate(Sender: TObject). Case . al cuadrado es: ' + IntToStr(numero)). numero := Random(4). Jasso Ponce Else begin numero := numero * numero. Valor Inicial .. Valor final : Codigo2. 2: ShowMessage('El numero es un Dos'). Case numero Of 0: ShowMessage('El numero es un Cero').

Aquí tienes su sintaxis. until numero = 10. 2 ... ShowMessage(IntToStr(suma)). Bueno creo que ha llegado la hora de explicar los ciclos o bucles así que empezaremos. La sintaxis es como sigue. begin numero := 1. While . While Condición Do Codigo Si el código es más de una instrucción se tendrá que poner entre un Begin y un End. Jasso Ponce numero dos dejando un mensaje en el else para cuando el numero sea mayor que dos.. For . suma : Integer. suma := 0. repeat suma := suma + numero. var numero. procedure TForm1. inc(numero). Do : Es parecido al anterior solo que la verificación del ciclo se realiza al inicio. cabe mencionar que en este tipo de ciclos el código se ejecuta por lo menos una vez debido a que la condición se realiza en la parte final del ciclo. end. su sintaxis es de la siguiente forma: Repeat Codigo Until Condicion La condición debe producir un resultado de tipo Booleano. Les pondré un sencillo ejemplo pero ahora utilizaremos el evento OnClick del Form. Do : Nos permite repetir la ejecución de un determinado código un numero definido de veces.Manual Delphi Ricardo E. que no se te olvide.FormClick(Sender: TObject). De este ciclo no pondré ejemplo creo que tu puedes utilizar el código anterior y aplicarlo a este ciclo. Repeat Until : Permite ejecutar un determinado código hasta que se satisfaga una cierta condición..

Manual Delphi Ricardo E. por si no tienes una idea clara de que es lo que son pues son por ejemplo el cuadro que te aparece en Word (u otra Aplicación) cuando no has guardado tu trabajo preguntando si deseas guardarlo. . el titulo de la ventana es el nombre de la aplicación. Así que de aquí en adelante nos dedicaremos a ver cosas mucho más interesantes. así que si quieres sumar los números del 1 al 100 seria: procedure TForm1. variables y sus sentencias de control. 2 . end. el texto del mensaje lo indicamos nosotros entre comillas simples y solo tiene un botón. var numero. • • • • • ShowMessage ShowMessagePos MessageDlg MessageDlgPos MessageBox ShowMessage . El cuadro parece por defecto centrado en la pantalla. Esto en parte podemos lograrlo con las ventanas o cuadros de mensaje. Con esto hemos concluido una parte que es fundamental conocer para el manejo de Delphi. Ejemplo: ShowMessage('Quiubule Familia'). Delphi permite Los siguientes tipos de Mensajes. Es el más sencillo de todos y ya lo hemos utilizado en ejercicios anteriores. ShowMessage(IntToStr(suma)). For numero := 1 To 100 Do suma := suma + numero. explotaremos la potencialidad de Delphi y empezaremos por ver los tipos de mensajes que Delphi permite realizar. . decirle que es lo que esta ocurriendo o dejarlo que tome decisiones. como lo es su entorno de desarrollo. suma: Integer. begin suma :=0.FormClick(Sender: TObject). Jasso Ponce For Variable := Valor Inicial To/Downto Valor Final Do Codigo El Downto es para realizar ciclos en decremento y el To en incremento. Mensajes en Delphi Es verdaderamente útil poder interactuar con el usuario. declaración de constantes.

Los valores que recibe son primeramente el texto que queremos mostrar.Screen. y seguidos de una coma.Height div 3). • • • • • mtIformation mtWarning mtError mtConfirmation mtCustom Por cada tipo de cuadro windows automáticamente te mostrara una imagen relacionada al cuadro elegido.Width div MessageDlg . Ahora es necesario saber cuales son los tipos de botones que podemos utilizar. Debes tener cuidado pues la posición se debe poner en Pixeles por lo tanto debes sabe el tamaño de tu pantalla. los botones que se mostraran y la ayuda de la aplicación que creemos si es que colocamos un botón de ayuda en el cuadro.Height el Largo.Width obtienesel ancho y con Screen. . . Jasso Ponce ShowMessagePos . Bueno como ejemplo podrías poner en el evento Onclick de tu formulario el siguiente código: ShowMessagePos ('Utilizando 3. Coordenadas'. pero si lo haces no pongas los corchetes. Es Parecido al anterior pero tiene dos valores más que indican las coordenadas donde se mostrara el cuadro indicando primero el ancho y luego el largo. Hasta ahora los tipos anteriores de mensajes no dejan que el usuario pues pueda tomar alguna decisión o algo por el estilo verdad. . Bien ahora les mostrare la lista de cuadros predefinidos por Windows. .Manual Delphi Ricardo E. • • • • • • • • • mbYes mbNo mbOk mbCancel mbAbort mbRetry mbIgnore mbAll mbHelp Los tipos de botones que deseas debes ponerlos entre corchetes ([ ]). así que el tipo de mensaje MessageDlg nos proporciona esa posibilidad. O si lo prefieres Otra forma de hacerlo es poner un serie de botones predefinidos. el tipo de cuadro que mostraremos según una lista predefinida por Windows. Los botones predefinidos son: • • • mbYesNoCancel mbAbortRetryIgnore mbOkCancel 2 . esto lo logras haciendo una pequeña llamada al Objeto TScreen. Screen.

MessageBox('QUIERES SALIR DEL PROGRAMA ?'.Height) = mrYes Then ShowMessage ('Que bueno. Ejemplo If MessageDlgPos ('¿Estas Aprendiendo?'. mtConfirmation . pon el siguiente código en el evento Onclick de tu Formulario.'SALIR'.mbno].Manual Delphi Ricardo E.Screen. El valor devuelto puede tomar los siguientes valores: • • • • • • • • • mrNone mrAbort mrYes mrOk mrRetry mrNo mrCancel mrIgnore mrAll El valor de la constante tiene el nombre del botón pulsado.Screen. de esa forma en el ejemplo cuando es pulsado el botón mbYes. . entonces vamos bien') else ShowMessage ('Hay jode. claro si nuestro Windows esta en español. MessageBox . mtConfirmation . .mbno]. No adentrare mucho en esto así que pondré un ejemplo de su uso.MB_OKCANCEL+MB_ICONQUESTION)=IDOK then Application. Esta es una variante de la función MessageDlg. Si pusiste atención te pudiste haber dado cuenta que MessageDlg devuelve el valor del botón pulsado por el usuario. [mbyes. el valor devuelto es mrYes. Jasso Ponce Bien ahora pondré un ejemplo de como utilizarlo. pos estúdiale más'). Es un tipo de mensaje que hace llamada a la Api de Windows sacándonos el titulo de los botones en español.Terminate. entonces vamos bien') else ShowMessage ('Hay jode. . pos estúdiale más').Width. . 2 . if Application.0) = mrYes Then ShowMessage ('Que bueno. [mbyes. MessageDlgPos .0. If MessageDlg ('¿Estas Aprendiendo?'. funciona exactamente igual solo que se le tienen que pasar las coordenadas de donde queremos que aparezca el cuadro de mensaje.

Ficha Standar En esta ficha se encuentran los componentes más utilizados y es la que esta activada cuando entramos a Delphi. Image Component n e Descripción Es un componente no visual que permite MainMenu diseñar el menú del formulario que si será visual.. Ahora pasaremos a explicar lo que estaban esperando las fichas de componentes visuales. que aparecerán al pulsar el botón secundario del ratón.Manual Delphi Ricardo E. Explicare únicamente los principales. por lo tanto visualiza texto pero no puede ser 2 . Los tipos de botones a poner ya se listaron anteriormente.         Mb_IconAsterisk Mb_IconError Mb_IconExclamation Mb_iconHand Mb_IconInformation Mb_IconQuestion Mb_IconStop Mb_IconWarning Bueno creo que sobre mensajes seria todo. Permite diseñar Menús contextuales o PopupMenu emergentes. Jasso Ponce En este caso también se controla el tipo de botón a poner y las combinaciones de las imágenes que pone Windows por defecto te las listo continuación. Label Es un cuadro de texto estático. Empezaremos a partir del segundo componente. Finalmente verdad.. Nota: Realizare algunos ejercicios durante el transcurso de la explicación. Ficha Standar.

Es una lista Standard de Windows en la que ListBox el usuario puede seleccionar un elemento de la lista. Botón de opción parecido al CheckBox. Dentro de el coloca dos etiquetas mismás que en su propiedad Caption les pondras Valor uno y Valor dos. Después pon dos Edit ve a su propiedad Text y quítales el texto que tienen por defaul. Contenedor de objetos pero más potente Panel que el GroupBox. Después coloca un componente ComboBox debajo del Label. Bueno ahora vamos a lo bueno aremos un ejercicio utilizando algunos componentes explicados. te saldra una ventana en la cual 2 . Es parecido al Bloc de Notas Es un Botton clásico de cualquier aplicación Button Windows. Deben de ir un Edit abajo de cada Label. así es que arranca Delphi o crea una nueva Aplicación. Es una casilla de verificación que permite ChechBox seleccionar y deseleccionar opciones. Selecciona el Componente GroupBox y en su propiedad Caption Coloca el texto Valores. Es un cuadro de Edición de Texto que Edit permite visualizar y modificar una línea de texto. GroupBox permitiendo agrupar diferentes controles. Ahora en tu parte superior derecha pega un componente Label y en su propiedad Caption le pondrás Operación. Jasso Ponce modificado. Coloca un GroupBox en tu formulario. no lleva ninguna imagen solo texto. Funciona como contenedor de objetos. Te vas a la propiedad Text del comboBox y Escribes el texto Suma. Lista desplegable que combina las características de un ListBox y un Edit ComboBox permitiendo al usuario seleccionar un elemento. Es un Cuadro de Texto multilinea. Todo el GroupBox y su componentes cárgalos hacia tu parte superior izquierda. se puede Memo visualizar y modificar varias líneas de texto.Manual Delphi Ricardo E. Es un contenedor exclusivamente para los RadioGroup RadioButtons. después ve a la propiedad Items y dale Click donde dice String. ScrollBar Barra de desplazamiento estándar. se RadioButto utiliza para seleccionar dentro de un n conjunto de RadioButton u opciones solamente uno de ellos.

da enter y ahora te aparecerá principal en la ventana que estará a tu derecha. Ahora vete a la propiedad Caption y escribe &Principal (El Amperson indica la tecla caliente). Dale doble Click. en esa ventana debajo de la leyenda Principal habrá un campo en blanco selecciona con el ratón. Muy bien ahora pon un componente RadioGroup en la parte inferior izquierda. Jasso Ponce escribirás los textos Suma. te saldra una ventana en la cual se irán viendo las opciones del menú que bayas poniendo en su propiedad Caption. y das Ok a la ventana.Manual Delphi Ricardo E. Después dentro de el coloca dos RadioButtons al primero en su propiedad Caption Pon el texto Azul. y al segundo ponle Normal. Pon un componente MainMenu. dentro del panel pon un componente Label que por cierto si has seguido mis instrucciones será el Label6 y de hecho debe de ser el seis por que lo utilizaremos para pegar el resultado de una operación. y pon en su propiedad Caption Aplicar. Después coloca debajo del ComboBox un componente Button y en su propiedad Caption pon Calcular. Resta en líneas o filas separadas. después vete a la propiedad Caption y escribe &Salir. Ahora el diseño quedaría como sigue 2 . Ahora da click sobre el formulario para regresar a el. Ahora coloca un componente Panel debajo del Componente Button. en su propiedad Caption pon color de ventana. Ahora pon un Componente Button al costado derecho del RadioGroup.

Caption := FloatToStr(StrToFloat(Edit1. Cuidado si te fijas la primera letra de Suma y Resta esta en mayúsculas si tu la escribes diferente tendrás que modificar las comparaciones en el If. Ahora el resultado será un tipo de dato flotante para asignárselo al Label que es de tipo String tengo que convertirlo mediante la instrucción FloatToStr().Color := ClBlue else Form1. Vete al evento Onclick del Button1 que dice Calcular. Ahora vete al menú desplegable y dale Click en la opción Salir de esta forma Delphi te creara el procedimiento Tform1.Text)).Text) StrToFloat(Edit2.Salir1Click en el cual pondrás este código.Text = 'Resta' Then Begin Label6. Y dependiendo de eso modifico el color del Form. Jasso Ponce Ahora vamos con el código. End.Color := clBtnFace.Terminate. dentro del pondremos el siguiente código: if ComboBox1. Muy bien Ahora en el Evento Onclick del Button2 que dice Aplicar pon este código. if RaDioButton1.Checked = True then Form1.Manual Delphi Ricardo E.Text)).Caption := FloatToStr(StrToFloat(Edit1. Como puedes ver la propiedad Checked me indica si un RadioButton esta o no Activado. En lo que respecta al uso del ComboBox me sirve para que el usuario elija el tipo de operación a realizar (Suma o Resta) yo previamente definí Suma y Resta en el ComboBox. Si te das cuenta en el Edit1 y Edit2 Guardamos los valores con los que aremos una suma o resta según elija el usuario. 2 . if ComboBox1. Application.Text = 'Suma' Then Begin Label6.Text) + StrToFloat(Edit2. Tanto el Edit como el Label son de tipo String por lo que para hacer la operación es necesario convertirlo por lo tanto los Edit los convierto a flotantes mediante FloatToStr(). End. El resultado lo pegaremos en el Label6 en su propiedad Caption.

Imagen Componen te Descripción 2 .Manual Delphi Ricardo E. Ficha Additional Contiene componentes que amplían los componentes de la estándar y que igualmente se utilizan frecuentemente. Ahora solo corre el programa con F9 y listo. Jasso Ponce Esta instrucción permite terminar correctamente la aplicación y devolver la memoria a Windows. Explicare solo algunos de ellos. Experimenta con él. De cualquier forma si sabes un poco de ingles puedes consultar la ayuda de Delphi seleccionando la ficha y después presionando F1.

Coloca un componente MáskEdit. solo que tiene más StaticText propiedades modificables. Contiene la propiedad BitBtn Kind que trae una lista de botones predefinidos con sus Bitmap. en la Propiedad Caption pon Fecha. se le puede agregar un SpeedButt Bitmap y trae la propiedad Flat que on permite dar una apariencia de boton plano. círculos y Shape líneas. Se utiliza para crear barras de ControlBar Herramientas acoplables. Es similar a Label. Windows Metafiles. etc. esta un botón que dice Másks. en el formulario por un componente StaticText. Bevel Es un rectángulo en 3D. Define un área contenedora mayor al área visualizada. Elige la que dice Date. Jasso Ponce Es un Botton que se le puede añadir un gráfico Bitmap. Util para crear diferentes tipos de Chart gráficos. si quieres la fecha en formato MM/DD/AA. etc. Es un ListBox solo que añade un CheckList CheckBox para cada elemento de la Box lista. iconos. te saldrá un menú desplegable elige la opción Input Másk Editor ( Esto también lo puedes realizar en la propiedad EditMásk). Bueno ahora es el momento de realizar algún ejercicio en donde utilicemos algunos componentes descritos. la propiedad BorderStyle ponla en sbsSunken. Permite dibujar polígonos. Sirve para definir áreas modificables Splitter por parte del usuario. dale click y vete al directorio Bin de Delphi y 2 . automáticamente al ScrollBox sobrepasar el área salen las barras deslizadoras. te saldrá una venta con máscaras predefinidas. Es un botón utilizado en las barras de herramientas. Permite mostrar gráficos como Image Bitmaps. Da un Click sobre él con el botón secundario del ratón. Crea una nueva aplicación. Se utiliza para validar la entrada de MáskEdit datos mediante el formateo del texto como lo es la fecha. al Caption del formulario ponle Ficha Addiotional.Manual Delphi Ricardo E.

Text := DateToStr(Date). solo dale Ok. en la propiedad Caption ponle figura. ve a la propiedad Glyph y ponle la imagen Form. La función que devuelve la hora del sistema es Date y el valor devuelto es de tipo fecha así que se tiene que convertir a String para pegarse en el MáskEdit. Recuerda para ponerle la imagen es igual que cuando se la pusiste al BitBtn. Jasso Ponce elige el archivo Spain. con esto la imagen ocupara todo el formulario. Muy bien ahora coloca un componente Shape en el Form. Ahora coloca un componente Image. ve a la propiedad que dice Glyph y dale Click a su derecha. presenta dos opciones elige la opción Colors y elige el color ClLime. ve a la propiedad Shape y Elige la opcion StCircle. su propiedad Align ponla en AlClient. y listo tienes tu máscara para la fecha. Ahora ya que seleccionaste Date. Despues ve a la propiedad Brush. Ahora te muestro como quedaría la parte visual del formulario. Una vez agregada la imagen ve a la propiedad Caption y Ponle Color.Manual Delphi Ricardo E. Coloca un SpeedButton en el formulario. Ve a la propiedad Picture y dale click a su derecha. de igual forma como en los botones agregamos una imagen haz lo mismo solo que ahora ve al directorio Images\Backgrnd y elige la imagen Writing. bueno elige la imagen Group. Bien ahora ya con la imagen puesta ve a la propiedad Flat y ponla en True. 2 . Despues de esto coloca un BitBtn a un costado del componente Shape. Ahora Pon este código en el evento OnCreate de tu Form. MáskEdit1. en este directorio tendras una serie de gráficos que Delphi te instala. te presentara una ventana en la cual te permitirá buscar y agregar una imagen al boton asi que dale click a la opción Load y ve al directorio images\buttons de Delphi.

Shape := StSquare. if numero = 0 then Shape1. Con este código generamos un numero aleatorio de entre cuatro números incluyendo el cero. Jasso Ponce Ahora en el Evento Onclick del BitBtn se pondría: procedure TForm1. if numero = 3 then Shape1. if numero = 5 then Shape1.Color := ClLime.BitBtn1Click(Sender: TObject).SpeedButton1Click(Sender: TObject).Shape := StRectangle. numero := random(5). if numero = 2 then Shape1.Color := ClYellow. y según el resultado estamos cambiando de color al Shape.Manual Delphi Ricardo E. Pon en el SpeedButton este codigo.Brush. procedure TForm1. Bueno con esto hemos concluido este pequeñísimo ejercicio. begin Randomize(). if numero = 1 then Shape1. var numero : Word.Color := ClBlack.Brush.Shape := StRoundSquare. if numero = 1 then Shape1. if numero = 3 then Shape1. if numero = 4 then Shape1. var numero : Word. Estamos generando aleatoriamente 6 posibles datos (0-5) mismos que utilizamos como constantes para cada una de las formás del Shape.Brush. begin randomize(). if numero = 2 then Shape1. numero := Random(3).Shape := StEllipse. Por ahora estamos haciendo cosas muy simples les prometo que posteriormente aremos algo más complicado mientras tanto pasaremos a la siguiente ficha.Brush.Color := ClBlue. end.Shape := StRoundRect. end.Shape := StCircle. 2 . if numero = 0 then Shape1.

Es una barra de desplazamiento de Windows. Despliega fechas y permite seleccionarlas. Define una matriz de imágenes del mismo tamaño mismás que son accesibles a través de su índice.Manual Delphi Ficha Win32 Ricardo E. Muestra secuencias de BitMaps o Archivos Avi sin sonido. Es una barra de estado clásica de Windows. Jasso Ponce Contiene componentes que permiten la creación de aplicaciones que cumplen con las especificaciones de Windows 95 o superior. color. Es un contenedor de Barras de herramientas mismás que pueden ser configurables por el usuario Bueno es tiempo de hacer un ejemplo de su uso así que realiza lo siguiente: 2 . también permite introducirlas. Permite crear una barra de Herramientas. que nos permite desplazar el control por un conjunto de valores. en donde cada pagina es accesible desde las mismás solapas del componente. Crea una área multipágina. etc. Imagen Componente TabControl PageControl ImageList RichEdit TrackBar ProgresBar Animate DateTimePicker MonthCalendar StatusBar ToolBar CoolBar Descripción Crea solapas para cuadros de dialogo multipágina. Nos presenta el calendario por meses. Es una caja de texto que acepta el formato de texto enriquecido. A continuación se muestra. por lo tanto a nivel de palabra se le puede modificar el tamaño. Es una barra de progreso estándar que nos indica el avance de un determinado proceso.

Después ve a la propiedad ImageIndex y ponle 0 (A este botón le pondremos la imagen que este en el índice 0). te pondrá dos imágenes. Ahora así como agregaste esta imagen quiero que agregues dos más. Si todo va bien el diseño estaría más o menos así. Después vete a la ficha Standar y coloca dos Buttons debajo del componente Animate. Vete a la propiedad ImageList y selecciona el texto ImageList1 (Es el componente de imágenes que creamos). 2 . después que lo abres. Ahora si sobre esa nueva pagina pegaras un componente Animate. Ok. coloca un componente Image list en el form. Después de agregar las imágenes solo da click al botón de OK. Ahora nuevamente con el botón secundario del ratón dale click al ToolBar y ahora eliges la opcion NewSeparator. y agrega el archivo que dice DoorOpen. dale doble Click al componente. De igual forma como creaste el primer botón crea dos más y en su Hint pondrás Animación. Ahora vete a la propiedad Hint del botón que acabas de crear y ponle Salir. ahora vete a la propiedad Caption y ponle Animación. hay un botón que dice Delete. con esto te crea un botón separador. a uno le pones Animar y al Otro Detener. con esto te a creado una nueva pagina. Coloca dentro de esta pagina un componente MonthCalendary un componente DateTimePicker. a este botón no le haremos nada Ok.Manual Delphi Ricardo E. Ahora dale Click al Componente con el botón secundario del ratón y te saldrá un menú emergente. Coloca un componente ToolBar. en la propiedad ImageIndex pon 1 y 2 respectivamente. regresas a la ventana anterior y te mandara un mensaje en ingles que dice la dimensión de la imagen es demásiado grande y pregunta si la divide en dos. dale que si. vete a la carpeta Images/Buttons de Delphi. a estos componentes no les haremos nada. ve a la propiedad ShowHint y ponla en True. calendario. Jasso Ponce Crea una nueva aplicación. Con esto tendremos lista nuestra primer pagina así es que selecciona el componente PageControl y con el botón secundario del ratón dale nuevamente Click y elige la opción de NewPage. bueno la imagen del botón te la dejo a tu gusto Ok. Ahora Vete a la propiedad Caption y ponle Calendarios. en el menú emergente selecciona New Page. al caption del form ponle Ficha Win32. borra la segunda imagen con ese botón. en su propiedad Caption Ponle Herramientas. dale al botón que dice Add. selecciona la opción New Button. Ahora coloca un componente PageControl. Ok. con esto te crea un botón en en el componente ToolBar. Dale click al componente con el botón secundario del ratón. vete a la propiedad CommonAvi y selecciona el valor aviCopyFile. el caso que te tienen que quedar tres imágenes enumeradas del 0 al 2. te saldrá una ventana en la cual podrás agregar imágenes. Con eso tendremos nuestra barra de herramientas. Ok.

Active := True. en el evento Onclick del Button Animar pondrás este código. 2 . con esto te genera automáticamente el evento Onclick. Application. PageControl1. En el ultimo Botón (Calendarios) pondrás este código. Animate1.ActivePageIndex := 1. Dale Doble Click al primer botón que le pusimos Salir. Muy bien ahora selecciona la pagina que dice Animacion del PageControl. Como puedes ver las paginas del PageControl tienen un índice empezando de cero así es que solo es cuestión de poner que pagina es la que quieres activar. Jasso Ponce Muy bien ahora vamos a introducir el código. Bueno pon este código. Ahora en el Tercer botón que le pusimos Animación pondrás este otro código.Terminate.Stop. Animate1.ActivePageIndex := 0. empezaremos por los botones de la barra de herramientas. puedes hacerlo de la otra forma que tu ya sabes no importa. PageControl1.Manual Delphi Ricardo E. Por ultimo en el evento Onclick del botón Detener pon este código.

Lo utilizaremos en el ejemplo para ver video.. Ve a la ficha System y coloca un componente OleContainer que abarque una parte considerable del formulario. Muy bien ahora como se supone que ya sabemos utilizar alguna variedad de componentes pues lo que haremos es un reproductor de vídeo casi casi profesional... Reproductor de Vídeo Primeramente diseñaremos el aspecto visual después nos iremos con el código Ok. traigan la tequila compadres. Crea una nueva Aplicación... enseguida muestro la ficha. Bueno ustedes son los que retocaran algunos detalles. Especifica los datos que serán enviados a DDEClientItem un servidor DDE.. 2 . pos ya terminamos.. Al Caption del Form ponle Mi Reproductor de Vídeo. v Especifica los datos que serán enviados a DDEServerItem un cliente DDE.. Jasso Ponce Muy bien. Establece una conexión DDE como cliente a DDEClientConv un servidor DDE. Ficha System Contiene componentes que permiten acceder a algunos elementos importantes del sistema. DDEServerCon Establece una conexión como servidor DDE. Ve a la ficha Estándar y coloca un componente ScrollBar. Es un Panel de control del reproductor de MediaPlayer vídeo multimedia y de archivos de sonido. ahora solo córrelo con F9 y listo. Ponlo debajo del componente OleContainer.Manual Delphi Ricardo E. PaintBox Define una área en la que se puede dibujar. Es un contenedor que define una área de OLEContainer cliente OLE... Imagen Componente Descripción Es un temporizador que ejecuta un evento Timer cada intervalo de tiempo programado.

btPause. Bien una vez puesto este componente vete a la propiedad Filter da doble Click a su derecha y te saldrá una venta dividida en dos partes la de la izquierda dice Filter Name y la de la derecha dice Filter. te desglosara todos los botones del Media Player. Ok. btStop en True los demás ponlos en False. Pon el componente OpenDialog. A un costado del componente mediaPlayer pon un componente BitBtn (Esta en la ficha Additional). en su caption ponle Duracion. Ahora en filter name Escribirás Archivos Avi. Estarn en True por Defaul. Ahora ve a la Propiedad Display. ahora pon dos componentes Label nuevamente y su propiedad Visible pónselas en False. Ok.Manual Delphi Ricardo E. en Filter escribiras *. es un componente no visual y mediante la instruccion Execute nos mostrara la típica ventana de Abrir un Archivo. Vete a la ficha Dialogs. De cualquier forma abajo presento el diseño. pon otro componente Label abajo de ese. agrégale una imagen (ya sabes como) y en la propiedad caption ponle Abrir. ahora vete a la propiedad VisibleButtons. nuevamente en una nueva fila escribe en Filter Name Todos los Archivos y en Filter *. Transcurrido. te desplegara una lista de componentes elige el componente OleContainer1.Avi. Mira compadre no explique todas las fichas que trae Delphi. quiero que dejes solamente los botones btPlay. 2 .*. Ve a la ficha estándar y pon un componente Label. Jasso Ponce Ve a la ficha System y coloca un componente MediaPlayer. Esa ventana quedaría de la siguiente forma. y en su caption ponle T. pero con lo que hemos visto hasta ahora ya sabes navegar entre las fichas y sus componentes así es que vamos a utilizar un componente que esta en otra ficha diferente a las vistas. el tercer Label tiene que quedar a un costado del Label 1 y el cuarto del 2. Ve a la ficha System y pon un componente Timer.

OleContainer1.Execute = True then begin MediaPlayer1.Height). Muy bien si has hecho todo lo que te dije el Formulario tiene que lucir más o menos Así. Tienes que ponerlo como yo te lo estoy Escribiendo ya que esa etiqueta la utilizo para saber el estado del formulario y las mayúsculas o minúsculas son sensibles en las comparaciones. Esos procedimientos no se copian por que Delphi te los crea. Mediaplayer1.BitBtn1Click(Sender: TObject). begin if Opendialog1. procedure TForm1.Manual Delphi Ricardo E. Ojo el código va completo con todo y los procedimientos que Delphi me genera en cada evento. Vete a la propiedad SimplePanel y ponla en True. Ahora viene lo interesante el código. Ok. Automáticamente se colocara en la parte inferior del formulario. Ahora pon este código en el BitBtn1 al que le pusimos Abrir.OleContainer1. MediaPlayer1.Open.DisplayRect := rect(0. 2 . Después ve a la Propiedad Simpletext y ponle Inactivo.0.Width.FileName. Jasso Ponce Muy bien Ahora ve a la ficha Win32 y coloca un componente StatusBar.FileName := OpenDialog1.

Caption := Format('%d:%d'.Visible := True. ScrollBar1. Ahora pondrás este código en el evento OnTimer del componente Timer. Label4. después simplemente lo abrimos. en estos se muestra el tiempo total del vídeo y en el otro se mostrara el tiempo en el que va la reproducción. Después ponemos visibles los Labels 3 y 4. end. Jasso Ponce MEdiaPlayer1.[duracion div 60.Play. end. El componente Timer va a estar ejecutando este código cada segundo.Visible := True. procedure TForm1.Timer1Timer(Sender: TObject). Label3. end.Max := length. observa que utilizamos un With MediaPlayer do con el cual nos 2 .TimeFormat := tfMilliseconds.Execute devuelve un valor True cuando el usuario abre un archivo. //minuto * 60 + segundo. si la propiedad simpletext es diferente a Inactivo ejecutara el código que le sigue.Manual Delphi Ricardo E. Label3. end. El MediaPlayer mediante su propiedad FileName le indicamos el archivo que reproducirá. posicion := round(Position div 1000).Position := position.FileName. duracion Mod 60]). Puedes irte al inspector de Objetos o simplemente dale Doble Click con el ratón al componente. StatusBar1.Caption := Format('%d:%d'. la propiedad FileName contiene el nombre el archivo que abrió. begin if StatusBar1. posicion Mod 60]). duracion : LongInt. Observa que el OpenDialog1.SimpleText <> 'Inactivo' then begin with MediaPlayer1 do begin MediaPlayer1. Label4. var posicion. duracion := Round(Length div 1000).SimpleText := 'Repoduciendo Archivo: ' + OpenDialog1. Primeramente verifica el StatusBar. Si te fijas la propiedad DisplayRect permite indicar el tamaño en que queremos visualizar el Vídeo que por cierto es el tamaño del componente OleContainer. end.[posicion div 60. scrollBar1.

el vídeo se vea a pantalla completa y de igual forma al volverlas a presionar regrese a pantalla normal. BitBtn1.Visible := False.Visible := False. Indicamos al MediaPlayer que el formato del tiempo será en Milisegundos. Shift: TShiftState).Visible := True. Form1. procedure TForm1.Visible := False.0. MediaPlayer1.Visible := False.Visible := False.WindowState := WsMaximized.Visible := True. BitBtn1.Visible := True.WindowState = WsNormal then begin Ancho := Form1.Visible := False.FormKeyDown(Sender: TObject.DisplayRect := rect(0. end else begin Form1. Form1. StatusBar1.Width. Label2. Label1.Position := PoScreenCenter. Label1.Form1. calculamos su posición y las pegamos en los Labels. Bueno para lograr eso pon este código en el evento OnKeyDown del Formulario.BorderStyle := BsNone. ScrollBar1.Display := Form1.Form1.ClientHeight). Jasso Ponce permite acceder a todos las propiedades de ese componente. 2 .Manual Delphi Ricardo E. Label2. posteriormente calculamos la duración del archivo. Label4. nuestra aplicación es capaz de reproducir vídeo y esta bien pero que tal si le damos un toque más especialon como que al presionar las teclas Alt + Enter.Visible := False. Label3. Label4.Height := Alto. MediaPlayer1. Alto := Form1.Visible := True.Visible := True.Visible := False. OleContainer1. StatusBar1. var Key: Word. Form1.Visible := True.Height.Width := Ancho.Visible := False. MediaPlayer1. Label3.WindowState := WsNormal. Form1. Hasta ahora con el código que hemos puesto.Visible := True. MediaPlayer1. begin if (HiWord(GetKeyState(VK_MENU)) <> 0) and (Key = 13) then begin if Form1. Ha y desde luego vamos recorriendo el ScroolBar.Clientwidth. Form1.

Visible := True. Las variables Globales del Form las declaras en la cláusula Var del Unit del Form. Ancho : Integer. Ahora cuando se presionan estas teclas resta saber en que estado se encuentra mi formulario. yo se que si.DisplayRect := rect(0.BorderStyle := BsSingle. Antes de seguir con el código debes saber que he declarado dos variables de tipo global para este formulario. Cuando maximizo la ventana en las variables globales Ancho y Alto guardo el valor de las propiedades Width y Height del Form mismás //Aqui estan declaradas 2 . end. Sí puedes encontrarlo y declararlas verdad.Form1. las utilizo para almacenar el tamaño del Form al momento de maximizarlo a pantalla completa y de esta forma cuando el usuario regrese a pantalla normal utilizo el valor de esas variables para volver el Form a su tamaño original. estoy utilizando una llamada a GetKeySatate y Key para saber cuando se presionan las teclas Alt y Enter(Checa su uso en la pagina de trucos). MediaPlayer1. var Form1: TForm1.Manual Delphi Ricardo E. Ahora esto se realiza checando la propiedad WindowsState. mira para que te ubiques te muestro la parte en donde tienes que declararlas.Form1. las variables son Ancho y Alto. Como puedes ver es más código verdad. Ok. MediaPlayer1.dfm} Como ves están casi al inicio del Unit. en caso de que este normal lo maximizo en caso contrario lo pongo en estado normal. implementation {$R *. Muy bien prosiguiendo con la explicación.Clientwidth. pues si pero es que para reproducir el vídeo a pantalla completa tenemos que poner en False la propiedad Visible de todos los componentes Visuales y de igual forma ponerla en True cuando regrese a pantalla normal. Jasso Ponce ScrollBar1. OleContainer1. Alto : Integer. end.Display := OleContainer1.Visible := True. end.ClientHeight). esta justo arriba de la cláusula Implementation. Form1.0.

El BDE sirve como traductor entre nuestra aplicación y las bases de datos que utilizamos funcionando también como interfaz entre los componentes especializados para bases de datos que posee Delphi. bueno despues unicamente resta indicarle al MediaPlayer que se va a reproducir en el form. y eso lo hacemos mediante la propiedad Display. Bases de Datos Vaya por fin hemos llegado a una parte que tal vez estabas esperando. Después Pongo la propiedad Visible en False de todos los componentes visuales. mediante las variables Globales Ancho y Alto ponemos las dimensiones del Form. Delphi posee su propio motor de base de datos el BDE o Borland Databae Engine el cual nos permite desarrollar nuestras aplicaciones independizándolas del gestor de bases de datos. no nada más puedes reproducir vídeo en un OleContainer si no en cualquier superficie plana. de esta forma el Form abarca toda la pantalla incluyendo la barra de inicio de windows. Hay otras cosillas pero es básicamente esto. Delphi posee una herramienta que nos permite diseñar nuestras bases de datos. le indicamos al mediaPlayer que se reproducirá en el OleContainer y listo. volvemos a poner el BorderStyle del Form en BsSingle.Manual Delphi Ricardo E. Jasso Ponce que tienen las dimensiones del formulario respectivamente. Hay te va una nota acerca del MediaPlayer. Ojo aparte de indicarle que se reproducirá en el form hay que indicarle las nuevas dimensiones del vídeo mediante la propiedad DisplayRect.. Enseguida entenderás por que. ponemos la propiedad BorderStyle del form en BsNone y lo maximizamos. es un programa llamado Database DeskTop. Esto es en si lo que sucede cuando se maximiza. como un Panel o el mismo Form.. Antes de empezar quiero adelantarles que durante los capítulos siguientes haremos algunas bases de datos. Órale pues. Primeramente mostrare las fichas de componentes más comunes relacionados con el manejo de bases de datos 2 . El BDE cuenta con una biblioteca de funciones conocida como IDAPI (Integrated Database Applications Program Interface) que es el traductor ante los distintos gestores de bases de datos para que entiendan lo que nuestra aplicación realiza... y es eso lo que hacemos. cuando se minimiza pues simplemente pones visibles todos los componentes visuales. la propiedad WindowsState del form la ponemos en WsNormal.

modificación. 2 . Imagen Componente DataSource Descripción Realiza las conexiones a las bases de datos. Permite el acceso a datos tanto en una aplicación ClientDataS estándar como el acceso et desde clientes en sistemás distribuidos. Jasso Ponce Contiene componentes para realizar conexiones con las bases de datos y obtener la información que en ella se almacena. A continuación se muestra. Imagen Componente DbGrid DbNavigator DbText Descripción Presenta los datos en una rejilla de filas y columnas. Label vinculado a bases de datos. eliminación.Manual Delphi Ficha Data Access Ricardo E. Ficha Data Controls En esta ficha se encuentran componentes similares a los de la ficha standard y Additional pero que estarán ligados a bases de datos permitiendo con esto trabajar con la información almacenada en ellas. Posibilita la navegación por los registros de una tabla permitiendo su navegación.

Permite personalizar un area de presentación de datos y DbCtrlGrid permite que el área actúe como un Dbgrid. Image vinculado a bases de DbImage datos. ComboBox que presenta datos DbLookupComb de una tabla y modifica los de oBox otra. ListBox que presenta datos de DbLookupListBo una tabla y modifica los de x otra. Permite crear y ejecutar consultas SQL a una base de datos. Memo vinculado a bases de DbMemo datos. Chart vinculado a bases de DbChart datos. Ficha BDE Esta ficha contiene componentes que habilitan la conexión a bases de datos utilizando el BDE engine de Delphi. RadioGroup vinculado a bases DbRadioGroup de datos. 2 . Imagen Componente Table Query Descripción Permite la conexión a una tabla de una base de datos.Manual Delphi DbEdit Ricardo E. ListBox Vinculado a bases de DbListBox datos. ComboBox vinculado a bases DbComboBox de datos. CheckBox vinculado a bases DbCheckBox de datos. RichEdit vinculado a bases de DbRichEdit datos. Jasso Ponce Cuadro de texto vinculado a bases de datos.

la primera es accesando desde el menú inicio/programás/Delphi/Database DeskTop.Manual Delphi Ricardo E. a través del BDE. Foxpro. Permite el acceso a datos por BDEClientData parte de aplicaciones cliente. Dbase. Esta herramientas nos permite en realidad hacer otras cosillas. Muy bien para entrar al DataBase DeskTop lo podemos hacer de dos formás. Encapsula una tabla que esta NestedTable anidada dentro del campo de otra tabla. Muy al accesar al el te aparecerá de la siguiente forma. Informix. Database DeskTop Delphi nos permite crear bases de datos en tiempo de ejecución mediante código. solo quiero enseñarles lo básico para continuar con este manual o curso. Permite realizar actualizaciones UpdateSQL en una base de datos SQL. MsAcces. Permite realizar acciones sobre BatchMove los datos localmente que luego serán enviados al servidor. pero también nos brinda la posibilidad de crearlas en tiempo de diseño mediante el Database Desktop. pero no quiero adentrarme mucho en. etc. Gestiona y controla las Session conexiones activas a las bases de datos. 2 . Database DeskTop me permite crear tablas de diferente tipo como tablas Paradox. OK. Set etc. Jasso Ponce Permite ejecutar procedimientos StoredProc almacenados en un servidor de bases de datos. en este caso nos enfocaremos a crear tablas de tipo Paradox aunque en su momento are una aclaración cuando es necesario utilizar algún otro tipo de tabla. La otra es Dentro de Delphi te vas al Menú Tools y encontraras la opción Database Desktop. Realiza conexiones a servidores DataBase remotos.

es útil de verdad. ahora el detalle está que cuando pasas tu aplicación a otra unidad debes cambiar la ruta a cada tabla y recompilar. etc. 2 . después al New y por ultimo Table. foxpro. de esta forma creamos nosotros una tabla. te presento esa venta. pero antes nos presenta una pequeña ventana en la cual nos pide que elijamos que tipo de dato crearemos. todo eso se soluciona pues utilizando alias. de hecho en los programás instaladores como el Install Shield te permite crear el alias que en tu aplicación ayas puesto.Manual Delphi Ricardo E. Solo que para estos ejercicios lo are de la forma tradicional solo queria informarles que existe esa posibilidad. Muy bien vete al menú que dice File. Estos alias son muy útiles ya que usualmente tienes que indicar la ruta en dónde está tu tabla como por ejemplo c:\programa\Tablas. antes de seguir quiero explicar que en Delphi se manejan mucho los alias. los cuales son un identificador para un directorio o carpeta en los cuales se tienen guardadas las bases de datos. si va hacer paradox. Jasso Ponce Muy bien. por cierto en el alias DbDemos Delphi guarda algunas tablas de ejemplo por si después quieres hecharles un ojillo primo.

precio y mínimo. de cualquier forma si sabemos su tecla abreviada se la podemos escribir directamente. Jasso Ponce Elige Paradox 7. se pondrá un asterisco en señal de que es clave primaria. sirve para indicar cuales campos serán nuestras claves primarias. para elegir un campo como clave primaria posicionate en Key y presiona la barra espaciadora. Después está otra leyenda que dice Type. para seleccionar el tipo de dato basta con situarnos en Type y presionar la barra espaciadora y nos desplegara todos los tipos de datos. contendrá el tipo de dato que será nuestro campo. proveedor. producto. eso se lo indicamos tecleándolos directamente. de hecho esta activada por defaul.Manual Delphi Ricardo E. Por ultimo está la leyenda Key. después de eso te saldrá la siguiente ventana: En esta ventana es en donde crearemos la estructura de nuestra base de datos el campo Field Name contendrá los nombres de los campos de nuestra base de datos que en este ejemplo serán: Clave. Está la leyenda que dice Size la cual indica el tamaño del campo. Ahora quiero que hagas la siguiente estructura: Field Name Clave Producto Type I (Long Integer) A (Alpha) 40 Size Key * (Clave Primaria) 2 .

en este momento hemos creado las bases de datos. No entrare en más detalles. pero falta explicar muchas cosas que son necesarias por lo tanto conforme se expliquen se le ira avanzando al sistema Ok. Muy bien ahora solo quiero que des Click en el botón que dice Save As. Para crear el directorio vete al explorador ó Mi PC y simplemente vete a la unidad C y créala. De igual forma como creaste esta tabla quiero que hagas las siguientes tablas y las guardes en el mismo directorio OK.Manual Delphi Cantidad Precio Minimo N (Numeric) $ (Money) I (Integer) Ricardo E. Field Names Fecha Ingreso Type D $ Size Key * Guardala con el nombre de ventas OK. 2 . ventas de productos y generación de reportes de las utilidades. solo te digo que experimentes un poco con ellas. encontraras una leyenda que dice Table Properties y debajo de ella un especie de Combobox. por lo tanto no es necesario crearlo. No vamos a crear algún índice secundario en esta tabla por que usaremos algunas sentencias Sql en búsquedas por producto con propósito de aprendizaje. Tabla Ventas (que sea paradox 7). Field Names Clave Cantidad Producto Precio Subtotal Type I N A $ $ Size 40 Key Guardala con el nombre de Auxiliar OK. y guardes la tabla en el directorio c:\Ejemplo con el nombre de Inventario. El ejercicio que realizaremos se trata de un sistema que controla un inventario de productos. Ese combobox contiene las propiedades de la tabla que tu puedes configurar. Tabla Auxiliar (que sea paradox 7). Jasso Ponce Muy bien ya que tecleaste esta estructura quiero que te ubiques en la parte izquierda de tu ventana.

etc. que se pueden dividir en tres grupos. A continuación te listo los principales eventos del componente Table.. el principal responsable de prácticamente todo es el componente Table. y forma una pareja muy útil con el componente Datasource.Manual Delphi Componente TTable Ricardo E. lectura. Se genera después del borrado de un registro AfterEdit Se genera después de editar un registro AfterInsert Después de Insertar After Post Después de grabar los datos BeforeCancel Antes de cancelar la operación BeforeClose Antes de que se cierre la tabla BeforeDelete Antes de borrar un registro AfterDelete 2 . Jasso Ponce Es un componente no visual y se encuentra en la ficha BDE. Existen dos formás de indicarle la base de datos que usaremos. Existe otra propiedad para los índices secundarios que funciona exactamente igual y es la propiedad IndexName. esta propiedad me listara todas las tablas existentes en la ruta o alias que pusimos en el DatabaseName. el cual es el encargado de conectar el componente table con los controles usados para visualizar los datos. cuyo nombre empieza por After . Bueno después de esto es necesario indicarle la tabla que se va a utilizar y esto se hace en la propiedad TableName. una es dándole toda la ruta que en nuestro caso seria C:\EJEMPLO o indicando el alias que se haya definido en el sistema que es lo más recomendable utilizar los alias pero bueno esa es otra historia digiera chonita. Este componente es el encargado de leer. El componente Table tiene una larga lista de eventos. los cuales empiezan por la palabra Before. escribir. Existen otras propiedades interesantes como IndexFieldNames que es para indicarle el índice que usaremos en la tabla. los eventos que se producen antes de un operación como una apertura. Desde luego mostrara las claves primarias que se hayan puesto cuando se diseño la B.D. Cuando se trabaja con una base de datos. etc la base de datos a la cual esta conectado. La primera propiedad que se debe modificar en el componente es la que hace referencia a que base de datos queremos conectar el componente y se trata de la propiedad DatabaseName. luego están los eventos que se producen en el momento y cuyo nombre empieza por On y por ultimo los eventos que se producen después. posteriormente la propiedad Active se tendrá que poner en True para poder manipular la tabla. cierre. actualizar.

Open Close Edit Insert Post Cancel Delete First Last Next Prior Se abre la tabla Se cierra la tabla Para editar el campo actual Añade datos a la tabla Graba los datos Cancela la operación actual Borra el registro actual de la tabla Se va al primer registro de la tabla. FieldByName permite el acceso al objeto Tfield asociado a un determinado campo a partir del nombre del campo en la tabla su sintaxis es de la siguiente forma: Function FieldByName(Const NombreCampo: String): TField. Retrocede un registro. Jasso Ponce Antes de editar el registro actual Antes de insertar un registro Antes de abrir la tabla Antes de guardar los datos Se genera cuando se va a calcular el valor OnCalcFields de un campo OnDeleteErr Cuando se produce un error al borrar un or registro OnEditError Cuando hay un error al editar un registro OnFilterReco Cuando se activa el filtrado rd OnNewRecor Cuando se añade un registro d Cuando hay un error durante el grabado OnPostError de datos Ahora te listare las operaciones más comunes que se realizan en un componente Ttable. Se va al ultimo registro de la tabla. Accesos fisicos a la tabla utilizando FieldByName . No te espantes es fácil utilizarlo por ejemplo en nuestra base de datos Inventario que acabamos de crear si queremos acceder al campo Producto y asignarle un nombre seria de la siguiente forma: 2 .Manual Delphi BeforeEdit BeforeInsert BeforeOpen BeforePost Ricardo E. . Cuando se manejan bases de datos es común que necesitemos acceder a los sus campos mediante código y precisamente un método de acerlo es utilizando FieldByName. . Avanza al siguiente registro.

Manual Delphi Ricardo E. . El componente Table proporciona una serie de herramientas para realizar búsquedas de registros con la limitación de que solo se 2 . . Otra forma de ordenar la tabla es utilizando la propiedad IndexFieldNames en la cual se pondrá el índice primario por el cual se quiere ordenar. . . Búsquedas de Registros . Inicio y fin de la Tabla . que por cierto eso lo indicamos con el . Por ejemplo para saber si se ha llegado al final de la tabla seria: If Table1.IndexFieldNames := 'Clave'.As. En tiempo de ejecución también se puede cambiar el índice de ordenación. Una vez que se ha definido un DataSet los registros que contiene se encuentran ordenados por su índice activo y este índice queda determinado por el valor de la propiedad IndexName del componente TTable si no se especifica u índice secundario se tomara el índice primario. . La propiedad Bof toma el valor True cuando se esta en el primer registro de la tabla y la propiedad Eof toma el valor True cuando se esta en el ultimo registro de la tabla o cuando la tabla esta vacía. posteriormente escribimos FieldByName en el cual dentro de paréntesis y entre comillas simples indicaremos el nombre del campo al cual aremos referencia.FieldByName('Producto'). . por ultimo bastara con indicarle el tipo de dato que es el campo al cual hacemos referencia. En caso de que quieras leer el valor de un campo y asignarlo a una variable pues simplemente cambia la posición de la línea de código anteriormente escrita solo recuerda que los tipos de datos sean iguales.Eof = True then ShowMessage('SE ESTA EN EL FINAL DE LA TABLA').AsString := 'Sabritas'. por ejemplo el código para ordenar la tabla Inventario a través de su Clave primaria seria así. Cuando en un desplazamiento sobre la tabla se llega a su inicio o a su final se modifican las propiedades Bof y Eof. Table1. Como ves primeramente va el nombre del componente Table que estará ligada a nuestra base de datos física. Ordenación de Registros . Jasso Ponce Table1. Como puedes ver simplemente se le asigna el nombre del índice a la propiedad IndexFieldNames. Los índices previamente se tuvieron que haber declarado en la tabla. Es de igual forma para la propiedad IndexName.

el cual nos permite buscar por una condición en un columna o por varias columnas.FindKey([Edit1. yo utilizare el método más común y menos problemático que es el método directo. Aunque Ami en lo particular me gusta utilizar este método y cuando necesito realizar una búsqueda por un campo que no es índice utilizo el SQL pues. posteriormente va FindKey en el cual entre paréntesis y corchetes ponemos la variable o el dato a buscar que en este caso estoy suponiendo que en un Edit el usuario escribió el producto que desea buscar. y si su busqueda fue exitosa la tabla muestra la fila que cumplió la 2 . Por ejemplo en la tabla Inventarios para buscar un producto se escribiría el siguiente código. If Table1.Text]) = True Then ShowMessage('Producto Localizado') Else Table1. regresa un valor Falso O Verdadero dependiendo si tuvo éxito o no en la búsqueda.D.FindKey([Edit1.FindNearest([Edit1. Jasso Ponce realizaran con campos indexados. Como puedes ver esto lo hice utilizando la instrucción FindNearest.Manual Delphi Ricardo E. Como puedes ver simplemente va el nombre del componente Table que previamente nosotros lo ligaremos a la B. El otro método de búsquedas es Locate. Ahora si deseas que el sistema en caso de que no encuentre el registro se posicione en el registro más cercano al buscado se pondría la siguiente Instrucción. If Table1. Locate es una función que devuelve True o False según ha tenido éxito o no..Text]). Ahora como el método devuelve un valor True cuando se tiene éxito pues solo lo comparo con un if igualado a True.Text]) = True Then ShowMessage('Producto Localizado') Else ShowMessage('Producto no encontrado')... Mediante el método FindKey se busca en la tabla para encontrar un registro en el que sus campos índices coincidan con los que se han pasado como argumentos en un array de valores separados por comás. no le aunque les explicare el otro método existente para busquedas.

Recuerda que te dije que el componente Table va íntimamente relacionado con el DataSource. Options : TLocateOptions) El primer parámetro es el campo o campos por los cuales queremos hacer la búsqueda. pos es cierto así es que te te explicare su funcionamiento. o sea que la busqueda no es exacta. estos componentes acceden por diferentes caminos a los datos. el cual indica como se ha de realizar la búsqueda. const KeyValues : Variant.[ loCaseInsensitive]). por lo que la interfaz obtenida difiere según el componente empleado. Por último esta Options. La propiedad más importante del DataSource es DataSet en la cual se pondrá la tabla que queremos ligar a el. Jasso Ponce condición.[]). esto quiere decir que se mostraran las filas que contengan CocaCola en sus respectivos campos además que otros datos. por ejemplo si estamos buscando productos según su proveedor es aquí en donde lo pondríamos. Por ejemplo: Table1.Manual Delphi Ricardo E.Locate ('Producto'.Locate ('Producto'. si se ignoran las mayúsculas. por ejemplo en nuestra tabla Inventario hay un campo en el cual guardamos el nombre de los productos y siqueremos realizar una búsqueda por este campo es en este primer parámetro donde debemos poner el nombre del campo.'CocaCola'. El segundo contiene la condición. Para usar este método se han de pasar una serie de parámetros y a continuación te muestro su sintaxis: Locate(const KeyFields : string. etc. Controles Data-Aware 2 .'CocaCola'. DataSource El componente table pertenece a un grupo de componentes que son derivan del componente TDataset. si se hacen búsquedas parciales en los campos Alfanuméricos. El ejemplo quedaría así: Table1. Para que los diferentes controles que muestran los datos sean capaces de acceder a esta variedad de interfaces pues se utiliza el DataSource el cual es un componente intermedio el cual tiene la tarea de mostrar una interfaz común a todos los controles.

no or hace falta pulsar F2 dgTitles Muestra los títulos de las columnas Se muestra un indicador para dgIndicator conocer el registro activo Permite cambiar el ancho de las dgColumnResize columnas Dibuja líneas de separación entre las dgColLins columnas Dibuja líneas de separación entre las dgRowLines filas Se puede navegar por el dgTabs componente usado la tecla Tab Selecciona filas completas en lugar dgRowSelect de filas Permite borrar registros. etc. El usuario puede editar los datos sobre la rejilla dgAlwaysShowEdit La rejilla esta en modo edición. En caso de que el DataSource se encuentre en otro formulario pues simplemente se le escribe el nombre del formulario en el que se encuentra y su dataSource. pero aparte de eso podemos también realizar inserciones. Uno de los componentes más comunes sin duda es el Dbgrid el cual esta constituido por un conjunto de rejillas a través de las cuales nos presenta la información de las tablas.Manual Delphi Ricardo E. La propiedad principal es DataSource. . modificaciones. . Después existen otras propiedades interesantes como Options que a continuación describo. y cuenta con varias propiedades y métodos que nos ofrecen una amplia gama de configuraciones tanto para el aspecto como para el funcionamiento del control. por ejemplo supongamos que tengo 2 formularios en el primero tengo mi tabla y mi DataSource1 y en el segundo formulario tengo un DbGrid1 pues simplemente para ligarlo en su propiedad DataSource pondría Form1. mostrando dgConfirmDelete un mensaje Cancelas las inserciones vacías al dgCancelOnExit salir del control Permite seleccionar múltiples filas a dgMultiSelect la vez dsEditing 2 . es aquí en donde indicamos el datasource al cual queremos vincularlo.DataSource1 y presto es todo. A continuación te lo explicare. Nos sirve para visualizar información almacenada en una tabla. Jasso Ponce Son los que se encuentran en la ficha DataAcces y Excepto por el componente DbNavigator el resto de los componentes son utilizados para presentar los datos de las tablas. ediciones. Componente DBGrid .

pon la propiedad Active en True. Para accesar al editor de columnas basta con dar doble click sobre el componente o dar un click con el botón secundario y elegir la opción Columns Editor del menú emergente. que encapsula tanto el aspecto de las columnas como los campos de las tablas o consultas SQL que están ligadas al la columna. Jasso Ponce Hasta ahora esta bien con el DBGrid pero su verdadera potencialidad se encuentra en la propiedad Columns.Manual Delphi Ricardo E. Coloca un componente DataSource y en su propiedad DataSet pon Table1. Para este pequeño ejemplo es necesario que hagas lo siguiente: 1. Cuando no se definen columnas en un DBGrid automáticamente el control creara una columna para cada campo de nuestra base de datos. Ahora viene algo importante. hasta ahora nos mostrara todos los campos de la tabla en nuestro DBGrid por lo tanto quiero que des doble Click sobre el DBGrid y aparecerá el editor de columnas. bien ahora ya tengo 2 . en su propiedad DataBasename elige DBDemos. pero sorpresa verdad esta vacío y eso es por que no se han definido y para definirlos basta con dar un click en el tercer icono que dice Add All Fields y nos agregara una columna para cada campo de nuestra base de datos empezando por un índice cero. Pon un componente Table. 2. Coloca un componente DbGrid y en su propiedad DataSource pon DataSource1. saldrá la siguiente ventana. en su propiedad TableName elige la tabla Animals. 3.

o un botón Color de fondo de la columna Número de filas desplegables Nombre del campo que se visualiza Fuente con la que se muestra la información de la columna Lista de valores que aparecerán al desplegar la columna Esta columna solo es de lectura Ancho de la columna en Pixels Título de la columna Ahora la opción Title tiene ciertas propiedades que son interesantes es por eso pariente que las describo. a continuación te las describo.Propiedad y 2 . solo ten cuidado ya que la propiedad ButtonStyle debe ser cbsAuto.Columns[número_columna]. Alignme Alineación de la cabecera de nt columna Texto que muestra la cabecera de la Caption columna Color Color fondo de la cabecera Fuente con la que mostrara la Font La propiedad PickList es cabecera una propiedad que apunta a una lista de String y el efecto que produce es que en la columna donde se ponga se muestra un menú desplegable que se activara con el ratón y contendrá todo lo que hayamos puesto en la propiedad PickList. cabe mencionar que no solo puedo borrar algunos campos que no quiera si no que también puedo cambiar el orden de las columnas arrastrando con el puntero del ratón a la posición que deseo un campo en particular.Manual Delphi Ricardo E. Alignment Button style Color DropDown Rows FieldName Font PickList ReadOnly Width Title Alineación de la columna Permite desplegar un lista con valores. Cuando estoy en el editor de columnas y selecciono una de ellas cambiaran las propiedades en el inspector de objetos brindándonos con esto ciertas opciones que podremos modificar. Jasso Ponce todos los campos de mi base de datos por lo tanto si quiero borrar algunos bastara con seleccionarlos y dar un click en el segundo icono que dice Delete Selected (Del). Se puede manipular información y realizar operaciones con los campos del DBGrid los métodos más comunes son el DbGrid1.

Retrocede al registro anterior del actual. desabilita Next y Last y activa First y Prior. Describo los botones del navegador. Este control tiene incorporada las funcionalidades más comunes que se realizan sobre una base de datos ya que con el podemos navegar entre los registros. ponerlo en modo de edición. activa Next y Last. Avanza al registro posterior al actual. Desactiva los botones First y prior y activa Next y Last si no lo estaban.Manual Delphi Ricardo E. activa First y Prior. DBNAvigator . Salta al ultimo registro de la tabla. Jasso Ponce DbGrid1. Borra el registro actual y se posiciona en el registro siguiente Pone la tabla en modo de edición.Fields[número_columna]. Botón Método Descripción Salta al primer registro de la tabla. Cancela la edición del registro activo y nbFirst First nbPrior nbNext Prior Next nbLast Last nbInsert Insert nbDelete Delete nbEdit Edit nbPost nbCancel Post Cancel 2 . . con lo cual se pueden modificar los datos del registro. eliminar un registro. Escribe en la base de datos los cambios realizados sobre el registro activo. modifica el estado de la tabla a modo de Edicion. insertar registros.propiedad. su propiedad más importante es la DataSource en la cual se tiene que indicar el DataSource sobre el cual trabajara. Todo dependerá de que tipo de operación deseo realizar. Inserta un nuevo registro en la posicion anterior al registro actual. . etc.

. Las demás propiedades son iguales a las del Edit. La propiedad Hints permite colocar una leyenda para cada botón. Tiene el aspecto de un Label solo que a diferencia de este ultimo. solo recuerda poner en la Propiedad DataSource del DBNavigator DataSource1.Manual Delphi nbRefresh Refresh Ricardo E. 2 . mostrara la información contenida en un registro de la base de datos. la cual hará referencia a la tabla con la que se trabajara. solo es cuestión que indagues sobre ellos un poco y tu mismo descubrirás su funcionalidad. no se puede introducir información en un DBText. basta con poner en false los que no queramos que se muestren. El componente DBEdit esta diseñado tanto para presentar datos como para introducir datos en una tabla y su propiedad más importante es DataSource. DBEdit. La propiedad ConfirmDelete recibe un valor Booleano y esta en True por defaul y lo que realiza es mandarnos un mensaje de advertencia cuando se trata de borrar un registro. si desactivaste algún botón su leyenda solo déjala en blanco. Sus propiedades más interesantes son el DataSource y DataField. las cuales funcionan igual que las del DBEdit. Una propiedad interesante es la propiedad VisibleButtons que contiene todos los botones que nos presenta el DBNavigator. DBText (Ficha DataAcces). Otra propiedad interesante podría ser ReadOnly la cual recibe un valor Boolano y sirve para poner el campo en solo lectura desabilitando de esta forma que se capture información sobre el. sale primo. NOTA: Todos estos componentes funcionan a través de las propiedades DataSource y DataField. Esta propiedad mostrara todos los campos de la tabla solo tienes que elegir cual quieres. . Ahora a nuestro formulario por favor colócale un DbNavigator y listo podrás recorrer los campos de la tabla Animals que pusimos anteriormente. La propiedad DataField Indica el campo de la base de datos con el cual se trabajara. Refresca la tabla o la actualiza. Jasso Ponce recupero los datos anteriores. El componente DBText esta diseñado solo para presentar información.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->