Manual de Visual Foxpro Nivel 1

download Manual de Visual Foxpro Nivel 1

of 24

Transcript of Manual de Visual Foxpro Nivel 1

LOS OBJETOSVisual objetos FoxPro se a basa los en la programacin del mundo orientada para a la

objetos (POO), la cual es una forma de programacin que utiliza (similares objetos real) solucin de problemas. La POO permite descomponer un problema en bloques relacionados. Cada bloque pasa a ser un objeto auto contenido que contiene sus propios datos e instrucciones. De esta manera, la complejidad se reduce y se pueden realizar programas ms largos de una manera sencilla.

MECANISMOS BSICOS DE LA POO Los mecanismos bsicos de la programacin orientada a objetos son: Objetos Propiedades Mtodos Eventos Mensajes Clases Objetos Un objeto es una entidad que tiene atributos particulares (propiedades) y unas formas de operar sobre ellos (mtodos). Por tanto, un objeto contiene variables que especifican su estado y operaciones que definen su comportamiento. Son ejemplos de objetos: formularios, botones de comando, cuadros de texto, etiquetas, etc. Propiedades Compilado Por Elieser Nez

Las objeto.

propiedades Hay

representan

las

caractersticas como Caption que

del la

propiedades

particulares,

poseen los botones de comando por ejemplo, y genricas como Name que la poseen todos lo objetos. Mtodos Los mtodos son procedimientos asociados a un objeto. Se ejecutan como respuesta a un evento, por ejemplo al dar click en un botn de comando. Tambin pueden ser invocados explcitamente en el programa. Eventos Un evento es la capacidad de un objeto de reaccionar cuando ocurre una determinada accin (accin y reaccin). Como respuesta a un evento se enva un mensaje y se ejecuta un determinado mtodo (procedimiento). Mensajes Un mensaje es una llamada a un mtodo (procedimiento), de tal forma que cuando un objeto recibe un mensaje la respuesta a ese mensaje es ejecutar el procedimiento asociado. Cuando se ejecuta un programa orientado a objetos, los objetos estn constantemente recibiendo, interpretando y respondiendo a mensajes de otros objetos. Clases Una clase es una descripcin para producir objetos de esa clase o tipo. Es decir se trata de una generalizacin de un tipo especfico de objetos. En otras palabras, un objeto es una variable del tipo definido por una clase. Por ejemplo, piense en un molde para hacer pasteles, el molde es la clase y los pasteles los objetos.

CARACTERSTICAS DE LA POO Compilado Por Elieser Nez

Las

caractersticas

fundamentales

de

la

programacin

orientada a objetos son: Abstraccin Encapsulamiento Herencia Polimorfismo Abstraccin La abstraccin permite no detenernos en los detalles concretos del funcionamiento de las cosas, sino centrarnos en los aspectos que realmente nos importan y nos son tiles en un determinado momento, en cierta medida, se podra decir que es sese el objeto y olvdese de como funciona en forma interna. Por ejemplo, para manejar una computadora no necesitamos saber como funcionan sus circuitos electrnicos, en trminos de corriente, tensin, etc. Encapsulamiento Esta caracterstica permite ver un objeto como una caja negra autocontenida en la que se ha metido de alguna manera toda la informacin los que maneja dicho objeto. bsicas, Esto permite manipular objetos como unidades permaneciendo

oculta su estructura interna. Herencia La herencia es la caracterstica que permite compartir automticamente propiedades y mtodos entre objetos. Es decir, se pueden crear nuevas clases de objetos en base a clases existentes. Ms concreto, un objeto puede heredar un conjunto general de propiedades y mtodos a las que puede aadir

Compilado Por Elieser Nez

aquellas caractersticas que son especficas suyas. El usuario de Visual Basic no dispone de esta caracterstica. Polimorfismo Polimorfismo, del griego cuyo significado es muchas formas, es la caracterstica que permite implementar mltiples formas de un mismo mtodo, dependiendo cada una de ellas de la clase sobre la que se realiza la implementacin. Esto hace posible que se puede acceder a una variedad de mtodos distintos (todos con el mismo nombre) utilizando exactamente el mismo medio de acceso.

LOS OBJETOS DE VISUAL FOXPRO Visual Foxpro soporta la abstraccin, la encapsulacin, el polimorfismo y la reutilizacin de cdigo. La reutilizacin de cdigo es la capacidad de trasladar caractersticas de un objeto a otro, lo que se logra con alguna forma de herencia. Esto se consigue mediante la creacin y uso del objeto. Los objetos de Visual Foxpro estn divididos en dos tipos: controles y contenedores. Los controles son un medio grfico que permiten a los usuarios interactuar con la aplicacin para la manipulacin de datos y ejecucin de de son tareas. opcin, objetos a Son ejemplo de de controles: cuadros otros y etiquetas, cuadros de texto, botones de comando, casillas de verificacin, Los los ms botones cuadros que lista, combinados, etc. contenedores utilizados pueden incluir objetos y permiten el acceso a los objetos que contienen. Entre tenemos los formularios, marcos cuadrculas. El formulario ms los controles constituyen la interfaz de la aplicacin.

Compilado Por Elieser Nez

REFERENCIANDO OBJETOS La sintaxis para referenciar objetos es la siguiente: THISFORM.OBJETO.PROPIEDAD = VALOR Por ejemplo, para establecer el ttulo de un formulario a Visual Basic es fcil, la orden sera: Form1.Caption = Visual Foxpro es fcil

LOS EVENTOS Cada objeto responde a un conjunto de eventos. Como respuesta a un evento se ejecuta un determinado procedimiento. Para aclarar este concepto desarrollaremos la siguiente aplicacin, la cual consiste en un formulario, un cuadro de texto y un botn de comando. El usuario debe ingresar un mensaje en el cuadro de texto y al pulsar el botn de comando, el mensaje recientemente ingresado, se coloca como ttulo del formulario.

Visual FoxPro es Fcil

Para ello proceda a construir la interfaz mostrada en la figura anterior. Luego, dar doble click sobre el botn de comando e ingrese el siguiente cdigo: Command1_Click() Compilado Por Elieser Nez

Form1.Caption = Text1.Text Seguidamente guarde y proceda ejecutar su aplicacin. Como puede verificar, el evento Click se dispara cada vez que el usuario pulsa (hace click) sobre un control.

CONVENCIN DE NOMBRES PARA LOS OBJETOS La convencin a seguir en la presente gua - para dar nombre a los objetos - consiste en utilizar ciertos prefijos, los cuales indicaran el tipo de objeto del que se trata. Prefijo Frm Fra Lbl Txt Cmd Chk Opt Lst Cbo Tim Img Grd Formulario Marco Etiqueta Cuadro de texto Botn de comando Casilla de verificacin Botn de opcin Cuadro de lista Cuadro combinado Cronmetro Imagen Cuadrcula Objeto

Elementos que intervienen al momento de realizar el cdigo para una aplicacin.TIPOS DE DATOS Los datos con los que trabajaremos probablemente incluyan informacin descripciones, relacionada fechas, con etc. nmeros, Cada dato dinero, nombres, a un corresponde

Compilado Por Elieser Nez

determinado tipo, es decir, pertenece a una categora de datos que se manipulan de maneras similares. Tipo Numerico Carcter Fecha Logico Currency Descripcin Entero, decimal, real Alfanumerico Fecha corta, larga, Hora Verdadero o Falso Monetario (8 bytes)

CONSTANTES Una durante constante la almacena de un un dato cuyo valor no cambia una

ejecucin

programa.

Para

declarar

constante utilice la siguiente sintaxis: Const NOMBRE_CONSTANTE = VALOR

VARIABLESUna variable almacena un dato cuyo valor puede

cambiar durante la ejecucin de un programa. Para declarar una variable utilice la siguiente sintaxis: NOMBRE_VARIABLE = Valor A manera de ejemplo considere lo siguiente: CANTIDAD = 30 PRECIO = 1.5 TOTAL = CANTIDAD * PRECIO

Compilado Por Elieser Nez

OPERADORES Los operadores los son smbolos Los que indican son cmo los sern datos manipulados operandos. operandos

(constantes y/o variables) sobre los que acta los operadores para producir un determinado resultado. Operadores aritmticos Operador Significado ^ Exponenciacin Menos unario * / Multiplicacin y divisin \ Divisin entera Mod Resto de una divisin entera + Suma y resta Operadores relacionales Operador Significado = Igual que Diferente que Menor que Mayor que Menor o igual que Mayor o igual que Operadores lgicos Operador Significado Not Negacin And Conjuncin Or Disyuncin inclusiva Xor Disyuncin exclusiva Eqv Equivalencia (opuesto a Xor) Imp Implicacin (falso si primer operando verdadero y segundo operando falso) Operadores de cadenas de caracteres Operador Significado Concatenacin & Like Compara dos cadenas de caracteres

Compilado Por Elieser Nez

SENTENCIAS Una sentencia es una lnea de cdigo que indica una o ms operaciones a realizar. Por ejemplo: CANTIDAD = 30 Una sentencia Visual FoxPro puede escribirse en ms de una lnea fsica utilizando el carcter de continuacin de lnea (un espacio en blanco seguido del carcter de punto y coma). Por ejemplo: Messagebox(Visual Foxpro es un programas facil ; ,64+0,Informacin)

ESTRUCTURAS DE CONTROL Las estructuras de control permiten tomar decisiones y realizar un proceso repetidas veces (procesos iterativos). Para ello Visual Basic dispone de las siguientes estructuras de control: If . . . Endif, If . . . Then . . . Else, Do Case, For . . . Endfor, Do While . . . . Enddo Estructura If . . . Endif Este tipo de estructura evala una determinada condicin y en funcin a ello ejecuta las sentencias siempre y cuando la condicin sea verdadera. Su sintaxis es la siguiente If CONDICIN Then SENTENCIAS_VERDADERAS Endif Por ejemplo, el siguiente cdigo determina si un numero es mayor que otro. A=thisform.txtn1.value B=thisform.txtn2.value Compilado Por Elieser Nez

If A>B Sentencias Endif Estructura If . . . Else . . . Endif Este tipo de estructura evala una determinada condicin y en funcin a ello ejecuta uno de entre dos posibles grupos de sentencias. Su sintaxis es la siguiente: If CONDICIN Then SENTENCIAS_VERDADERAS Else SENTENCIAS_FALSAS Endif Si grupo de CONDICIN es verdadera Si se es ejecuta falsa el se grupo ejecuta de el

SENTENCIAS_VERDADERAS.

CONDICIN

SENTENCIAS_FALSAS.

Por ejemplo, el siguiente cdigo determina si un entero A es o no divisible por otro entero B: A = InputBox(Ingrese A?) B = InputBox(Ingrese B?) If A Mod B = 0 Then MsgBox Str(A) & es divisible por Else MsgBox Str(A) & no es divisible por & Str(B) End If Estructura Do Case Este estructura es una alternativa a la estructura If . . . Then . . . ElseIf, cuando lo que necesita es comparar la misma expresin con diferentes valores. Su sintaxis es la siguiente: Compilado Por Elieser Nez & Str(B)

Do Case Case EXPRESIN_1 SENTENCIAS_1 Case EXPRESIN_2 SENTENCIAS_2 . . . Otherwise SENTENCIAS_FALSAS Endcase En este caso se comprueba el valor de EXPRESIN_TEST

frente a la lista expresiones EXPRESIN_1, EXPRESIN_2, . . . y as sucesivamente, y busca el primer Case que incluya el valor evaluado en EXPRESIN_TEST, ejecutando a continuacin el bloque de sentencias correspondiente. Si no existe un valor igual a EXPRESIN_TEST, entonces se ejecuta las SENTENCIAS_FALSAS correspondientes al Otherwise. A manera de ejemplo vamos a codificar el programa de la seccin anterior el cual imprime el nombre del mes correspondiente a los nmeros del 1 al 12. Pero en esta vez utilizaremos la estructura Do Case (compare con cual de ambas estructuras es ms cmodo trabajar). N = InputBox(Ingrese N?) Do case Case N=1 Case N=2 Case N=3 Case N=4 Case N=5 Case N=6 : MsgBox Enero : MsgBox Febrero : MsgBox Marzo : MsgBox Abril : MsgBox Mayo : MsgBox Junio

Compilado Por Elieser Nez

Case N=7 Case N=8 Case N=9

: MsgBox Julio : MsgBox Agosto : MsgBox Setiembre

Case N=10 : MsgBox Octubre Case N=11 : MsgBox Noviembre Case N=12 : MsgBox Diciembre Otherwise MsgBox Error de datos Endcase Estructura For . . . Endfor Esta estructura es utilizada para ejecutar un bucle un nmero determinado de veces. El nmero de iteraciones deber ser conocido de antemano. Su sintaxis es la que se presenta a continuacin: For CONTADOR = INICIO To FINAL [Step INCREMENTO/DECREMENTO] SENTENCIAS_REPETITIVAS [Exit For] enddo Donde la variable CONTADOR es inicializada con el valor de INICIO y se incrementa o decrementa hasta un valor FINAL. INCREMENTO/DECREMENTO define la manera en que cambia el valor de la variable CONTADOR en cada iteracin. La sentencia Exit For permite salir del bucle For . . . Endfor antes de que este finalice. Por ejemplo, el siguiente cdigo imprime los nmeros enteros del 1 al 25. Dim C As Integer For C = 1 To 25 Thisform.edit1.value= str (C) + chr(13) endfor Compilado Por Elieser Nez

Para

que

este

cdigo

funcione

correctamente

debe

establecer la propiedad AutoRedraw del formulario a True. Estructura Do while. . . Enddo Esta estructura ejecuta un bucle mientras una condicin dada sea cierta, o hasta que una condicin dada sea cierta. La condicin puede ser verificada antes o despus de ejecutarse el cuerpo del bucle. Su sintaxis es: Do While CONDICIN SENTENCIAS_REPETITIVAS Exit Do Enddo Como ejemplo, consideremos el siguiente programa, el cual calcula el factorial de un entero N ingresado por teclado: FACT = 1 C = 1 N = InputBox(Ingrese N?) Do while c