Upload
oscars-choque
View
286
Download
6
Embed Size (px)
Citation preview
8/13/2019 Practicas Microsoft Visual Foxpro
1/48
MICROSOFT VISUAL
FOXPRO
NIVEL I
INTRODUCCIN A LA PROGRAMACIN
INTRODUCCIN
La presente Gua de Laboratorio, se elabor con la finalidad de complementar la parteterica con la parte prctica del curso. Contiene una gran variedad de ejemplos prcticos .
Desde ya les deseo la mejor de las suertes en el aprendizaje de icrosoft !isual "o#$ro.
Lima, %etiembre del &''&
Microsoft Visual FoxProGUA DE LABORATORIO N 1O!"ti#osLuego de completar este laboratorio, el estudiante ser capaz de(
8/13/2019 Practicas Microsoft Visual Foxpro
2/48
)dentificar los elementos del entorno integrado de desarrollo de icrosoft !isual
"o#$ro *.'.
)mplementar soluciones mediante programacin clsica.
Declarar y asignar valores tanto a las variables de memoria como a los arreglos.
+nalizar como es el flujo de control de un programa.
Crear funciones y procedimientos definidos por el usuario.
$o%si&"racio%"s$ara el desarrollo del presente laboratorio d. deber crear unacarpeta $'(Fu%&VFP(La1, para guardar sus trabajos correspondientes a este laboratorio.A)licaci*% N 1-n este primer ejercicio vamos a escribir un programa ue lea tres n/meros enteros ydetermine el n/mero mayor, el n/mero central y el n/mero menor. Debemos asumir ue
los tres n/meros son siempre distintos.
$ara el desarrollo de la presente aplicacin ingresar a icrosoft !isual "o#$ro. -n la
!entana de Comandos digite la siguiente orden(odifyCommand +plica'0
+ continuacin se debe presentar el -ditor de programas. -n dic1a ventana proceda aingresar el cdigo ue se indica(Close +ll
Clear
)nput 2)ngrese el valor de +32 4o n+
)nput 2)ngrese el valor de 532 4o n5
)nput 2)ngrese el valor de C32 4o nC
)f n+ 6 n5 41en
nay 7 n+
nen 7 n5
-lse
nay 7 n5 nen 7 n+
-nd)f
)f nC 6 nay 41en
nCen 7 nay
nay 7 nC
-lse
)f nC 6 nen 41en
nCen 7 nC
-lse
nCen 7 nen
nen 7 nC
-nd)f-nd)f
3 2ayor 72 8 %tr9nay:
3 2Central 72 8 %tr9nCen:
3 2enor 72 8 %tr9nen:
$ara ejecutar su programa dar clic; en el botn -jecutar 9. ?'.'' y %>. @'.''A un
descuento del &'= para consumos mayores a %>. @'.'' nuevos solesA para todos los
8/13/2019 Practicas Microsoft Visual Foxpro
3/48
dems casos no se aplica ning/n tipo de descuento. -l ejercicio consiste en elaborar una
programa ue permita determinar el importe a pagar por el consumidor.
$ara el desarrollo de la presente aplicacin abrir una nueva ventana de edicin e ingresar
el siguiente cdigo(Close +ll
Clear
Do B1ile .4.
)nput 2Consumo %>.2 4o nConsumo)f 4ype 92nConsumo2: 7 22
-#it
-nd)f
-ndDo
Do Case
Case nConsumo 67 ?' +nd nConsumo 7 @'
n)mporte 7 nConsumo E '.F
Case nConsumo6 @'
n)mporte 7 nConsumo E '.
Ht1erIise
n)mporte 7 nConsumo
-ndCase
3 2)mporte a pagar %>.2 8 %tr9n)mporte:
A)licaci*% N ,-l ejercicio consiste en escribir un programa ue lea 2 2 enteros y calcule la suma total,
la media aritmJtica, el m#imo y el mnimo de los datos.
$ara el desarrollo de la presente aplicacin, de manera anloga ue para los casos
anteriores abrir una nueva ventana de edicin e ingresar el siguiente cdigo(Close +ll
Clear
)nput 2)ngrese cantidad de n/meros32 4o nDeclare a!ector9n:
"or n) 7 0 4o n
)nput 2/mero K2 8 %tr9n): 8 232 4o a!ector9n):
e#t
na# 7 a!ectorK0
nin 7 a!ectorK0
n%uma 7 '
"or n) 7 0 4o n
n%uma 7 n%uma 8 a!ectorKn)
)f a!ectorKn) 6 na# 41en
na# 7 a!ectorKn)-nd)f
)f a!ectorKn) nin 41en
nin 7 a!ectorKn)
-nd)f
e#t
nedia 7 n%uma > n
3 2%uma 72 8 %tr9n%uma:
3 2edia 72 8 %tr9nedia, 0', &:
3 2#imo72 8 %tr9na#:
3 2nimo72 8 %tr9nin:
A)licaci*% N -
8/13/2019 Practicas Microsoft Visual Foxpro
4/48
+ continuacin vamos a escribir una funcin ue reciba como argumento de entrada una cadena de
caracteres y la devuelva en forma inversa, por ejemplo si se ingresa la cadena CHM+NH deber
retornar HN+MHC.
$ara el desarrollo de esta aplicacin proceda de manera similar a los casos anteriores e ingresar el
cdigo ue se muestra(
Close +ll
Clear+ccept 2)ngrese una cadena32 4o cCadena
3 2Cadena invertida 72 8 Cad)nv9cCadena:
"unction Cad)nv
$arameters cCadena
n 7 Len9+lltrim9cCadena::
Declare c4emporal9n:
"or n) 7 0 4o n
c4emporal9n): 7 %ub%tr9cCadena, n), 0:
e#t
c)nvertida 7 22
"or nO 7 n 4o 0 %tep P0c)nvertida 7 c)nvertida 8 c4emporal9nO:
e#t O
Meturn c)nvertida
A)licaci*% N .
-ste ejercicio consiste en escribir un programa ue imprima el calendario correspondiente
a un mes si se conoce una fec1a del mismo. $or ejemplo si se ingresa la siguiente fec1a
+ &Q 'Q 0FR? 9artes &Q de +bril de 0FR?: se debe obtener(
+5M)L
D L O ! %
0 & ? Q @ * R
F 0' 00 0& 0? 0Q
0@ 0* 0R 0 0F &' &0
&& &? &Q &@ &* &R &
&F ?'
Creo ue a estas alturas d. ya entendi como funciona esto. $or ello, esta aplicacin se
deja como ejercicio para el estudiante.
8/13/2019 Practicas Microsoft Visual Foxpro
5/48
Microsoft Visual FoxProGUA DE LABORATORIO N +
O!"ti#os
Luego de completar este laboratorio, el estudiante ser capaz de(
)mplementar soluciones mediante programacin orientada a objetos.
anejar las diferentes propiedades y eventos del formulario.
+Sadir controles a un formulario.
-stablecer las propiedades de los controles.
4rabajar con procedimientos de eventos.
$o%si&"racio%"s
$ara el desarrollo del presente laboratorio d. deber crear una
carpeta $'(Fu%&VFP(La+, para guardar sus trabajos correspondientes a este laboratorio.
A)licaci*% N 1
-l ejercicio consiste en elaborar una aplicacin ue permita leer un n/mero real de la
forma 2eee.ddd2 e imprima el mayor valor entre la parte entera y la parte decimal.
$ara el desarrollo de esta aplicacin, en primer lugar debe crear un nuevo formulario.$ara ello digite lo siguiente en la !entana de Comandos(
Create "orm
+ continuacin seleccione del en/ !er, la opcin 5arra de 1erramientas Controles de
"ormularios. %e presentar una ventana similar a la siguiente figura(
8/13/2019 Practicas Microsoft Visual Foxpro
6/48
-n seguida de la barra de 1erramientas mostrada ubicar los siguientes controles al
formulario(
& etiuetas
& cajas de te#to
? botones de comando
$ara ubicar un control en el formulario, simplemente dar clic; en el control deseado y
luego dar clic; en el formulario en la posicin ue se le desea ubicar. +dicionalmentepuede utilizar la barra de 1erramientas DiseSo para obtener una mejor presentacin.
+ continuacin proceda a establecer las propiedades de los objetos seg/n se indica, paraello dar clic; derec1o sobre el control y del men/ emergente ue se presenta elegir la
opcin $ropiedades.
For/1
ame "rm+plica'0
Caption ayor valor de un n/mero real
a#5utton .".P"also
in5utton .".P"also
La"l1
ame LblT
Caption )ngrese un real de la forma eee.ddd3
La"l+
ame Lblay
Caption ayor(
T"xt1
ame 4#tT
8/13/2019 Practicas Microsoft Visual Foxpro
7/48
)nputas; FFF.FFF
!alue '
T"xt+
ame 4#tay
)nputas; FFF
!alue '
$o//a%&1
ame Cmd+ceptar
Caption U+ceptar
Default .4.P!erdadero
$o//a%&+
ame CmdLimpiar
Caption ULimpiar
$o//a%&,
ame Cmd%alir
Cancel .4.P!erdadero
Caption U%alir
+ continuacin dar doble clic; sobre el control Cmd+ceptar y proceda a ingresar el
cdigo ue se muestra(
O!"to' $/&Ac")tar Proc"&i/i"%to' $lic0
nT 7 41isform.4#tT.!alue
n+ 7 )nt941isform.4#tT.!alue:
nT 7 nT P n+
n5 7 0''' E nT
)f n+ 6 n5 41en
nay 7 n+
8/13/2019 Practicas Microsoft Visual Foxpro
8/48
-lse
nay 7 n5
-nd)f
41isform.4#tay.!alue 7 nay
41isform.Mefres1
De manera anloga ingresar el siguiente cdigo para el control CmdLimpiar(
O!"to' $/&Li/)iar Proc"&i/i"%to' $lic0
41isform.4#tT.!alue 7 '
41isform.4#tay.!alue 7 '
41isform.4#tT.%etfocus
41isform.Mefres1
"inalmente proceder a ingresar el siguiente cdigo para el control Cmd%alir(
O!"to' $/&alir Proc"&i/i"%to' $lic0
Melease41isform
+ continuacin guarde su aplicacin como "rm+plica'0, luego proceda a ejecutarla. $ara
ello ingrese lo siguiente en la !entana de Comandos(
Do "orm "rm+plica'0
Debe funcionar sin problemas. $ruebe ingresando diferentes valores. -n caso ue fallerevise y corrija.
A)licaci*% N +
-n este ejercicio vamos a crear un formulario para calcular la edad de una persona a partir
de su fec1a de nacimiento.
8/13/2019 Practicas Microsoft Visual Foxpro
9/48
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el
formulario(
& etiuetas
& cajas de te#to
? botones de comando
Luego, proceda a establecer las propiedades seg/n se indica a continuacin(
For/1
ame "rm-dad
Caption
a#5utton .".P"also
in5utton .".P"also
La"l1
ame Lbl"ecac
Caption "ec1a de nacimiento(
La"l+
ame Lbl-dad
Caption %u edad es(
T"xt1
ame 4#t"ecac
-nabled .4.P!erdadero
T"xt+
8/13/2019 Practicas Microsoft Visual Foxpro
10/48
ame 4#t-dad
-nabled .".P"also
$o//a%&1
ame Cmd+ceptar
Caption U+ceptar
$o//a%&+
ame CmdLimpiar
Caption ULimpiar
$o//a%&,
ame Cmd%alir
Caption U%alir
Luego de establecidas las propiedades de los controles, proceda a ingresar el siguientecdigo(
O!"to' Fr/E&a& Proc"&i/i"%to' Loa&
%et Date "renc1
%et Century Hn
O!"to' Fr/E&a& Proc"&i/i"%to' I%it
comDia 7 CdoI9Date9::
cDia 7 %tr9Day9Date9::, &:
ces 7 Cmont19Date9::
c+nno 7 %tr9Vear9Date9::, Q:
c"ec1a 7 comDia 8 2 2 8 cDia 8 2 de 2 8 ces 8 2 del 2 8 c+nno
41isform.Caption 7 c"ec1a
41isform.4#t"ecac.%etfocus
41isform.Mefres1
8/13/2019 Practicas Microsoft Visual Foxpro
11/48
O!"to' $/&Ac")tar Proc"&i/i"%to' $lic0
d"ecac 7 Ctod941isform.4#t"ecac.!alue:
n-dad 7 )nt 99Date9: P d"ecac: > ?*@:
41isform.4#t-dad.!alue 7 %tr9n-dad: 8 2 aSos2
41isform.Mefres1
O!"to' $/&Li/)iar Proc"&i/i"%to' $lic0
41isform.4#t"ecac.!alue 7 22
41isform.4#t-dad.!alue 7 22
41isform.4#t"ecac.%etfocus
41isform.Mefres1
O!"to' $/&alir Proc"&i/i"%to' $lic0
Melease41isform
A)licaci*% N ,
-ste ejercicio consiste en elaborar un formulario ue simule el funcionamiento de un reloj
despertador digital. La aplicacin debe permitir al usuario ingresar la 1ora a la ue desea
ser avisado. -l diseSo de la interfaz debe ser similar a la figura siguiente(
$ara el desarrollo de esta aplicacin proceder a ubicar los siguientes controles en el
formulario(
& etiuetas
& cajas de te#to
8/13/2019 Practicas Microsoft Visual Foxpro
12/48
0 cronmetro
& botones de comandos
-n seguida establezca las propiedades seg/n se indica a continuacin(
For/1
ame "rmMeloj
Caption Meloj despertador digital
a#5utton .".P"also
in5utton .".P"also
La"l1
ame LblWora
Caption Wora
La"l+
ame LblDespertador
Caption Despertador
T"xt1
ame 4#tWora
"ont5old .4.P!erdadero
"ont%ize &Q
T"xt+
ame 4#tDespertador
"ont5old .4.P!erdadero
"ont%ize &Q
Ti/"r1
ame 4imer0
-nabled .4.P!erdadero
)nterval @''
8/13/2019 Practicas Microsoft Visual Foxpro
13/48
$o//a%&1
ame CmdHnHff
Caption UDesactivar
Default .4.P!erdadero
$o//a%&+
ame Cmd4erminar
Cancel .4.P!erdadero
Caption U4erminar
na vez establecidas las propiedades, proceda a ingresar el cdigo ue se muestra(
O!"to' Fr/R"lo! Proc"&i/i"%to' Loa&
$ubliclHnHff
O!"to' Fr/R"lo! Proc"&i/i"%to' I%it
lHnHff 7 .".
41isform.4#tDespertador.!alue 7 2''(''(''2
41isform.Mefres1
O!"to' Ti/"r1 Proc"&i/i"%to' Ti/"r
)f 41isform.4#tWora.!alue
8/13/2019 Practicas Microsoft Visual Foxpro
14/48
)flHnHff41en
lHnHff 7 .".
41isform.CmdHnHff.Caption 7 2U+ctivar2
-lse
lHnHff 7 .4.
41isform.CmdHnHff.Caption 7 2UDesactivar2
-nd)f
41isform.Mefres1
O!"to' $/&T"r/i%ar Proc"&i/i"%to' $lic0
Melease41isform
A)licaci*% N -
%e tiene un cajero automtico el cual permite manipular cierta cantidad de dinero para lo
cual dispone de los siguientes billetes( %>. 0'.'', %>. &'.'', %>. @'.'', %>. 0''.'' y %>.
&''.''. -laborar una aplicacin ue permita la lectura de la cantidad a retirar la cual debe
ser m/ltiplo de 0' 9caso contrario debe solicitar al usuario ue ingrese un valor correcto,
no debe aceptar la lectura de valores ue no cumplan esta condicin:. La aplicacin debeindicar el menor n/mero de billetes a utilizar. -l diseSo de la interfaz debe ser similar a lasiguiente figura(
MicrosoftVisual FoxProGUA DE LABORATORIO N ,
8/13/2019 Practicas Microsoft Visual Foxpro
15/48
O!"ti#os
Luego de completar este laboratorio, el estudiante ser capaz de(
anejar las diferentes propiedades y mJtodos del conjunto de formularios.
)dentificar y utilizar los controles estndar adicionales.
tilizar cajas de dilogo predefinidas para visualizar mensajes.
$o%si&"racio%"s
$ara el desarrollo del presente laboratorio d. deber crear unacarpeta $'(Fu%&VFP(La,, para guardar sus trabajos correspondientes a este laboratorio.
A)licaci*% N 1
-l ejercicio consiste en crear una aplicacin ue permita leer una fraccin y de como
resultado la fraccin simplificada. -sto es, ue 1alle la fraccin irreductible euivalente.
$ara el desarrollo de esta aplicacin proceda a crear un nuevo formulario y luego vaya alen/ "ormulario y elija la opcin Crear conjunto de formularios 9no se preocupe, pues
no se apreciar nada en especial:. uevamente vaya al en/ "ormulario y elija la opcin+gregar nuevo formulario. -l DiseSador de formularios debe presentar una apariencia
similar a la figura mostrada(
8/13/2019 Practicas Microsoft Visual Foxpro
16/48
+ continuacin proceda a ubicar los siguientes controles sobre el primer formulario
9"orm0:(
& etiuetas
& cajas de te#to
& botones de comando
%eguidamente debe establecer las propiedades de los objetos seg/n se indica(
For/1
ame "rm)ngreso
Caption )ngreso de datos
a#5utton .".P"also
in5utton .".P"also
La"l1
ame Lblumerador
Caption umerador3
La"l+
ame LblDenominador
8/13/2019 Practicas Microsoft Visual Foxpro
17/48
Caption Denominador3
T"xt1
ame 4#tumerador
!alue '
T"xt+
ame 4#tDenominador
!alue '
$o//a%&1
ame Cmd%implificar
Caption %implificar
Default .4.P!erdadero
$o//a%&+
ame Cmd%alir
Cancel .4.P!erdadero
Caption %alir
+ continuacin proceda a ingresar el cdigo ue se muestra(
O!"to' $/&i/)lificar Proc"&i/i"%to' $lic0
numerador 7 41isformset."rm)ngreso.4#tumerador.!alue
nDenominador 7 41isformset."rm)ngreso.4#tDenominador.!alue
)fnumeradornDenominador41en
nC 7 numerador
-lse
nC 7 nDenominador
-nd)f
Do B1ile 9numerador = nC
8/13/2019 Practicas Microsoft Visual Foxpro
18/48
nC 7 nC P 0
-ndDo
numerador 7 numerador > nC
nDenominador 7 nDenominador > nC
41isformset."rm)ngreso.Wide
41isformset."rm%alida.%1oI
41isformset.Mefres1
O!"to' $/&alir Proc"&i/i"%to' $lic0
Melease41isformset
Luego proceda a ubicar los siguientes controles sobre el segundo formulario 9"orm&:(
0 etiueta
0 caja de te#to
0 botn de comando
%eguidamente debe establecer las propiedades de los objetos seg/n se indica(
For/+
ame "rm%alida
Caption %alida
a#5utton .".P"also
in5utton .".P"also
La"l1
ame Lbl"raccion
Caption "raccin simplificada(
T"xt1
ame 4#t"raccion
+lignment &PCentro
8/13/2019 Practicas Microsoft Visual Foxpro
19/48
$o//a%&1
ame Cmd!olver
Caption !olver
+ continuacin proceda a ingresar el cdigo ue se muestra(
O!"to' Fr/ali&a Proc"&i/i"%to' Acti#at"
cumerador 7 %tr9numerador:
cDenominador 7 %tr9nDenominador:
c"raccion 7 cumerador 8 2 > 2 8 cDenominador
41isformset."rm%alida.4#t"raccion.!alue 7 c"raccion
41isformset.Mefres1
O!"to' $/&Vol#"r Proc"&i/i"%to' $lic0
41isformset."rm%alida.Wide
41isformset."rm)ngreso.%1oI
41isformset.Mefres1
"inalmente proceda a ingresar el cdigo ue se indica a continuacin(
O!"to' For/s"t1 Proc"&i/i"%to' Loa&
$ublicnumerador
$ublicnDenominador
$ublicnC
O!"to' For/s"t1 Proc"&i/i"%to' I%it
41isformset."rm%alida.Wide
41isformset.Mefres1
A)licaci*% N +
8/13/2019 Practicas Microsoft Visual Foxpro
20/48
-ste ejercicio consiste en elaborar una aplicacin ue acepte fec1as como tres n/meros
9dd, mm, aaaa: y las visualice del modo usual. + manera de ejemplo considere lo
siguiente(
Cuando el usuario 1aga clic; en el botn %alir o en el botn Cerrar de la barra de ttulo
del formulario, se debe confirmar si desea terminar la aplicacin, tal como se observa enla figura siguiente(
-n caso de ue el usuario elija la opcin %i, la aplicacin debe terminar. Caso contrario,
es decir si el usuario elige la opcin o, se debe proseguir con la aplicacin.
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el
formulario(
Q etiuetas
? controles numJricos
0 caja de te#to
? botones de comando
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
ame "rm"ec1a
Caption "ec1a en letras
8/13/2019 Practicas Microsoft Visual Foxpro
21/48
a#5utton .".P"also
in5utton .".P"also
La"l1
ame LblDia
+uto%ize .4.P!erdadero
Caption Da(
La"l+
ame Lbles
+uto%ize .4.P!erdadero
Caption es(
La"l,
ame Lbl+nno
+uto%ize .4.P!erdadero
Caption +So(
La"l-
ame Lbl-nLetras
+uto%ize .4.P!erdadero
Caption -n letras(
)i%%"r1
ame %pnDia
%pinnerWig1!alue ?0
%pinnerLoI!alue 0
)i%%"r+
ame %pnes
%pinnerWig1!alue 0&
%pinnerLoI!alue 0
8/13/2019 Practicas Microsoft Visual Foxpro
22/48
)i%%"r,
ame %pn+nno
%pinnerWig1!alue FFFF
%pinnerLoI!alue '
T"xt1
ame 4#t-nLetras
+lignment &PCentro
$o//a%&1
ame Cmd+ceptar
Caption U+ceptar
Default .4.P!erdadero
$o//a%&+
ame CmdLimpiar
Caption ULimpiar
$o//a%&,
ame Cmd%alir
Cancel .4.P!erdadero
Caption U%alir
na vez establecidas las propiedades proceda a ingresar el cdigo ue se indica a
continuacin(
O!"to' Fr/F"c2a Proc"&i/i"%to' Loa&
%et Date "renc1
%et Century Hn
O!"to' Fr/F"c2a Proc"&i/i"%to' 3u"r4U%loa&
XD-")- vfpVeso Q
XD-")- vfpVes *
8/13/2019 Practicas Microsoft Visual Foxpro
23/48
XD-")- vfpYuestion ?&
)fessage5o#92ZDesea terminar la aplicacin32, A
vfpYuestion 8 vfpVeso, 2$regunta2: 7 vfpVes 41en
Melease 41isform
-lse
oDefault
-nd)f
O!"to' $/&Ac")tar Proc"&i/i"%to' $lic0
c5arra 7 2>2
c"ec1a 7 41isform.%pnDia.4e#t 8 c5arra 8 41isform.%pnes.4e#t A
8 c5arra 8 41isform.%pn+nno.4e#t
d"ec1a 7 Ctod9c"ec1a:
comDia 7 CdoI9d"ec1a:
cDia 7 %tr9Day9d"ec1a:, &:
ces 7 Cmont19d"ec1a:
c+nno 7 %tr9Vear9d"ec1a:, Q:
c"ec1a 7 comDia 8 2 2 8 cDia 8 2 de 2 8 ces 8 2 de 2 8 c+nno
41isform.4#t-nLetras.!alue 7 c"ec1a
41isform.Mefres1
O!"to' $/&Li/)iar Proc"&i/i"%to' $lic0
41isform.%pnDia.!alue 7 '
41isform.%pnes.!alue 7 '
41isform.%pn+nno.!alue 7 '
41isform.4#t-nLetras.!alue 7 22
41isform.%pnDia.%etfocus
8/13/2019 Practicas Microsoft Visual Foxpro
24/48
41isform.Mefres1
O!"to' $/&alir Proc"&i/i"%to' $lic0
41isform.Yuerynload
A)licaci*% N ,
-ste ejercicio consiste en elaborar un formulario ue permita leer un n/mero entero yvisualice su tabla se multiplicar. $ara construir la tabla de multiplicar vamos a utilizar un
control cuadro de edicin, el cual tiene propiedades similares a un cuadro de te#to, pero
permite escribir te#to en lneas diferentes.
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en elformulario(
0 etiueta
0 caja de te#to
0 cuadro de edicin
0 botn de comandos
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
ame "rm4abla
Caption 4abla de multiplicar
a#5utton .".P"also
in5utton .".P"also
8/13/2019 Practicas Microsoft Visual Foxpro
25/48
La"l1
ame Lblumero
Caption )ngrese un n/mero(
T"xt1
ame 4#tumero
+lignment &PCentro
E&it1
ame -dt4abla
%croll5ars &P!ertical
$o//a%&1
ame CmdLimpiar
Caption ULimpiar
Default .4.P!erdadero
na vez diseSada la interfaz, proceda a ingresar el cdigo ue se indica a continuacin(
O!"to' TxtNu/"ro Proc"&i/i"%to' I%t"racti#"$2a%5"
n 7 !al941isform.4#tumero.!alue:
c% 7 22
"or n) 7 ' 4o 0&
n$ 7 n E n)
c% 7 c% 8 %tr9n: 8 2 E 2 8 %tr9n): 8 2 7 2 8 %tr9n$: A
8 C1r90?:
e#t
41isform.-dt4abla.!alue 7 c%
41isform.Mefres1
8/13/2019 Practicas Microsoft Visual Foxpro
26/48
O!"to' $/&Li/)iar Proc"&i/i"%to' $lic0
41isform.4#tumero.!alue 7 22
41isform.-dt4abla.!alue 7 22
41isform.Mefres1
A)licaci*% N -
-laborar una aplicacin ue acepte como entrada la reserva de agua de un depsito y los
litros ue se consumen a la semana. La aplicacin debe dar como resultado las cantidades
de agua ue uedan al final de cada semana. -l proceso finalizar cuando no uede agua
suficiente para una semana. tilizar otro formulario para mostrar la salida. -l diseSo de la
interfaz debe ser similar a la figura mostrada(
MicrosoftVisual FoxPro
GUA DE LABORATORIO N -
O!"ti#os
8/13/2019 Practicas Microsoft Visual Foxpro
27/48
Luego de completar este laboratorio, el estudiante ser capaz de(
sar casillas de verificacin y botones de opcin para alternar entre uno o ms
valores.
-stablecer las principales propiedades y mJtodos de las listas desplegables y
cuadros combinados.
$o%si&"racio%"s
$ara el desarrollo del presente laboratorio d. deber crear una
carpeta $'(Fu%&VFP(La-, para guardar sus trabajos correspondientes a este laboratorio.
A)licaci*% N 1
-ste ejercicio consiste en elaborar una aplicacin ue permita cambiar el aspecto de una
caja de te#to. -l usuario debe elegir el tipo de fuente a utilizar, el estilo, el color y el
tamaSo. -l diseSo de la interfaz debe ser similar a(
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el
formulario(
@ etiuetas
0 caja de te#to
0 cuadro combinado
0 lista
? casillas de verificacin
0 grupo de botones de opcin
0 botn de comando
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
8/13/2019 Practicas Microsoft Visual Foxpro
28/48
ame "rm-ditor
+utoCenter .4.P!erdadero
Caption -ditor
a#5utton .".P"also
in5utton .".P"also
La"l1
ame Lbl4e#to
Caption 4e#to
La"l+
ame Lbl"uente
Caption "uente
La"l,
ame Lbl4amaSo
Caption 4amaSo
La"l-
ame Lbl-stilo
Caption -stilo
La"l.
ame LblColor
Caption Color
$o/o1
ame Cbo"uente
List1
ame Lst4amaSo
T"xt1
8/13/2019 Practicas Microsoft Visual Foxpro
29/48
ame 4#t4e#to
"oreColor &@@, ', '
$2"c01
ame C1;egrita
Caption egrita
"ont5old .4.P!erdadero
$2"c0+
ame C1;Cursiva
Caption Cursiva
"ont)talic .4.P!erdadero
$2"c0,
ame C1;%ubrayado
Caption %ubrayado
"ontnderline .4.P!erdadero
O)tio%Grou)1
5uttonCount ?
O)tio%1
ame HptMojo
"oreColor &@@, ', '
O)tio%+
ame Hpt!erde
"oreColor ', &@@, '
O)tio%,
ame Hpt+zul
8/13/2019 Practicas Microsoft Visual Foxpro
30/48
"oreColor ', ', &@@
$o//a%&1
ame Cmd%alir
Caption U%alir
Default .4.P!erdadero
na vez establecidas las propiedades de la interfaz, proceda a ingresar el cdigo ue semuestra a continuacin(
O!"to' Fr/E&itor Proc"&i/i"%to' I%it
41isform.Cbo"uente.+dd)tem92+rial2:
41isform.Cbo"uente.+dd)tem92+rial 5lac;2:
41isform.Cbo"uente.+dd)tem92Courier eI2:
41isform.Cbo"uente.+dd)tem92Garamond2:
41isform.Cbo"uente.+dd)tem92)mpact2:
41isform.Cbo"uente.+dd)tem92% %ans %erif2:
41isform.Cbo"uente.+dd)tem924ec1nical2:
41isform.Cbo"uente.+dd)tem924imes eI Moman2:
"or n) 7 4o &' %tep &
41isform.Lst4amaSo.+dd)tem9+lltrim9%tr9n):::
e#t
O!"to' Fr/E&itor Proc"&i/i"%to' 3u"r4U%loa&
XD-")- vfpVeso Q
XD-")- vfpVes *
XD-")- vfpYuestion ?&
)fessage5o#92ZDesea terminar la aplicacin32, A
vfpYuestion 8 vfpVeso, 2$regunta2: 7 vfpVes 41en
8/13/2019 Practicas Microsoft Visual Foxpro
31/48
Melease 41isform
-lse
oDefault
-nd)f
O!"to' $oFu"%t" Proc"&i/i"%to' $lic0
41isform.4#t4e#to."ontame 7 41isform.Cbo"uente.!alue
41isform.Mefres1
O!"to' LstTa/a6o Proc"&i/i"%to' $lic0
n4amaSo 7 !al941isform.Lst4amaSo.!alue:
41isform.4#t4e#to."ont%ize 7 n4amaSo
41isform.Mefres1
O!"to' $20N"5rita Proc"&i/i"%to' $lic0
)f41isform.C1;egrita.!alue 7 0 41en
41isform.4#t4e#to."ont5old 7 .4.
-lse
41isform.4#t4e#to."ont5old 7 .".
-nd)f
41isform.Mefres1
O!"to' $20$ursi#a Proc"&i/i"%to' $lic0
)f41isform.C1;Cursiva.!alue 7 0 41en
41isform.4#t4e#to."ont)talic 7 .4.
-lse
41isform.4#t4e#to."ont)talic 7 .".
-nd)f
8/13/2019 Practicas Microsoft Visual Foxpro
32/48
41isform.Mefres1
O!"to' $20ura4a&o Proc"&i/i"%to' $lic0
)f41isform.C1;%ubrayado.!alue 7 0 41en
41isform.4#t4e#to."ontnderline 7 .4.
-lse
41isform.4#t4e#to."ontnderline 7 .".
-nd)f
41isform.Mefres1
O!"to' O)tRo!o Proc"&i/i"%to' $lic0
41isform.4#t4e#to."oreColor 7 MG59&@@, ', ':
41isform.Mefres1
O!"to' O)tV"r&" Proc"&i/i"%to' $lic0
41isform.4#t4e#to."oreColor 7 MG59', &@@, ':
41isform.Mefres1
O!"to' O)tA7ul Proc"&i/i"%to' $lic0
41isform.4#t4e#to."oreColor 7 MG59', ', &@@:
41isform.Mefres1
O!"to' $/&alir Proc"&i/i"%to' $lic0
41isform.Yuerynload
A)licaci*% N +
-ste ejercicio consiste en desarrollar una aplicacin ue permita ingresar el nombre de un
curso, el cual pasa a formar parte de una lista de espera antes de ser programado para su
dictado. Los cursos deben ser seleccionados de la lista de espera y trasladados a la lista de
cursos programados y viceversa. -l diseSo de la interfaz debe ser similar a la figuramostrada(
8/13/2019 Practicas Microsoft Visual Foxpro
33/48
$ara el desarrollo de esta aplicacin proceda a ubicar los siguientes controles en elformulario(
? etiuetas
0 cuadro de te#to
& listas
@ botones de comando
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
ame "rmCursos
Caption Cursos
a#5utton .".P"also
in5utton .".P"also
La"l1
ame LblCurso
Caption )ngrese nuevo curso(
La"l+
ame Lbl%eleccionar
Caption %eleccione un curso(
8/13/2019 Practicas Microsoft Visual Foxpro
34/48
La"l,
ame Lbl$rogramado
Caption Curso programado(
T"xt1
ame 4#tCurso
List1
ame Lst%eleccionar
List+
ame Lst$rogramado
$o//a%&1
ame Cmd+gregar
Caption
$icture C(U"und!"$U5itmapsU+dd)tem.5mp
$o//a%&+
ame Cmd+gregar4odo
Caption
$icture C(U"und!"$U5itmapsU+dd+ll.5mp
$o//a%&,
ame CmdYuitar
Caption
$icture C(U"und!"$U5itmapsUMemove.5mp
$o//a%&-
ame CmdYuitar4odo
Caption
8/13/2019 Practicas Microsoft Visual Foxpro
35/48
$icture C(U"und!"$U5itmapsUMemove+ll.5mp
$o//a%&.
ame Cmd+nnadir
Caption U+Sadir
-n seguida proceda a ingresar el cdigo ue se indica(
O!"to' $/&A%%a&ir Proc"&i/i"%to' $lic0
41isform.Lst%eleccionar.+dditem941isform.4#tCurso.!alue:
41isform.4#tCurso.!alue 7 22
41isform.4#tCurso.%et"ocus
O!"to' Lst"l"ccio%ar Proc"&i/i"%to' $lic0
)f41isform.Lst%eleccionar.List)nde#
8/13/2019 Practicas Microsoft Visual Foxpro
36/48
)f41isform.Lst%eleccionar.ListCount6 ' 41en
41isform.Lst$rogramado.+dd)tem9cCurso:
41isform.Lst%eleccionar.Memove)tem9nCurso:
41isform.Lst%eleccionar.List)nde# 7 '
41isform.Cmd+gregar.-nabled 7 .".
41isform.Cmd+gregar4odo.-nabled 7 .".
-nd)f
41isform.Mefres1
O!"to' $/&3uitar Proc"&i/i"%to' $lic0
cCurso 7 41isform.Lst$rogramado.!alue
nCurso 7 41isform.Lst$rogramado.List)nde#
)f41isform.Lst$rogramado.ListCount6 ' 41en
41isform.Lst%eleccionar.+dd)tem9cCurso:
41isform.Lst$rogramado.Memove)tem9nCurso:
41isform.Lst$rogramado.List)nde# 7 '
41isform.CmdYuitar.-nabled 7 .".
41isform.CmdYuitar4odo.-nabled 7 .".
-nd)f
41isform.Mefres1
O!"to' $/&A5r"5arTo&o Proc"&i/i"%to' $lic0
"or n) 7 0 4o 41isform.Lst%eleccionar.ListCount
41isform.Lst$rogramado.+dd)temA
941isform.Lst%eleccionar.List9n)::
e#t
41isform.Lst%eleccionar.Clear
8/13/2019 Practicas Microsoft Visual Foxpro
37/48
41isform.Cmd+gregar.-nabled 7 .".
41isform.Cmd+gregar4odo.-nabled 7 .".
41isform.Mefres1
O!"to' $/&3uitarTo&o Proc"&i/i"%to' $lic0
"or n) 7 0 4o 41isform.Lst$rogramado.ListCount
41isform.Lst%eleccionar.+dd)temA
941isform.Lst$rogramado.List9n)::
e#t
41isform.Lst$rogramado.Clear
41isform.CmdYuitar.-nabled 7 .".
41isform.CmdYuitar4odo.-nabled 7 .".
41isform.Mefres1
O!"to' Fr/$ursos Proc"&i/i"%to' 3u"r4U%loa&
XD-")- vfpVeso Q
XD-")- vfpVes *
XD-")- vfpYuestion ?&
)fessage5o#92ZDesea terminar la aplicacin32, A
vfpYuestion 8 vfpVeso, 2$regunta2: 7 vfpVes 41en
Melease 41isform
-lse
oDefault
-nd)f
A)licaci*% N ,
-l ejercicio consiste en elaborar una aplicacin ue permita leer n/meros de tipoentero, y a continuacin los visualice ordenados en forma ascendente o descendente.
tilice el mJtodo de la burbuja para realizar la ordenacin.
8/13/2019 Practicas Microsoft Visual Foxpro
38/48
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el
formulario(
? etiuetas
0 caja de te#to
0 lista
0 grupo de botones de opcin
? botones de comando
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
ombre "rm5urbuja
Caption Hrdenacin por burbuja
a#5utton .".P"also
in5utton .".P"also
La"l1
ame Lblumero
Caption )ngrese un nuevo n/mero(
La"l+
ame LblHrden
Caption Hrden(
8/13/2019 Practicas Microsoft Visual Foxpro
39/48
La"l,
ame LblLista
Caption Lista de n/meros(
T"xt1
ame 4#tumero
!alue '
List1
ame Lstumero
O)tio%1
ombre Hpt+scendente
Caption +scendente
O)tio%+
ombre HptDescendente
Caption Descendente
$o//a%&1
ombre Cmd+nnadir
Caption U+Sadir
Default 4rue
$o//a%&+
ombre CmdHrdenar
Caption UHrdenar
$o//a%&,
ombre Cmd%alir
Cancel .4.P!erdadero
Caption U%alir
8/13/2019 Practicas Microsoft Visual Foxpro
40/48
$icture C(U+rc1ivos de programaUicrosoft !isual
%tudioUCommonUGrap1icsU)consU+rroIsU
$oint'Q.ico
na vez establecidas las propiedades proceda a ingresar el cdigo ue se indica acontinuacin(
O!"to' Fr/Buru!a Proc"&i/i"%to' 3u"r4U%loa&
XD-")- vfpVeso Q
XD-")- vfpVes *
XD-")- vfpYuestion ?&
)fessage5o#92ZDesea terminar la aplicacin32, A
vfpYuestion 8 vfpVeso, 2$regunta2: 7 vfpVes 41en
Melease 41isform
-lse
oDefault
-nd)f
O!"to' $/&A%%a&ir Proc"&i/i"%to' $lic0
41isform.Lstumero.+dd)tem941isform.4#tumero.!alue:
41isform.4#tumero.!alue 7 22
41isform.4#tumero.%et"ocus
O!"to' $/&Or&"%ar Proc"&i/i"%to' $lic0
n 7 41isform.Lstumero.ListCount
Dimensionn+9n: +s )nteger
"orn) 7 0 4on
n+9n): 7 41isform.Lstumero.List9n):
e#t
8/13/2019 Practicas Microsoft Visual Foxpro
41/48
)f 41isform.HptionGroup0.Hpt+scendente.!alue 7 0 41en
"or n) 7 0 4o n P 0
"or nO 7 n) 8 0 4o n
)fn+9n): 6n+9nO: 41en
n4 7 n+9n):
n+9n): 7 n+9nO:
n+9nO: 7 n4
-nd)f
e#t
e#t
-nd)f
)f 41isform.HptionGroup0.HptDescendente.!alue 7 0 41en
"or n) 7 0 4o n P 0
"or nO 7 n) 8 0 4o n
)fn+9n): n+9nO: 41en
n4 7 n+9n):
n+9n): 7 n+9nO:
n+9nO: 7 n4
-nd)f
e#t
e#t
-nd)f
41isform.Lstumero.Clear
"or n) 7 0 4o n
41isform.Lstumero.List9n): 7 n+9n):
e#t
8/13/2019 Practicas Microsoft Visual Foxpro
42/48
O!"to' $/&alir Proc"&i/i"%to' $lic0
41isform.Yuerynload
A)licaci*% N -
Desarrollar una aplicacin ue permita realizar consultas acerca de un determinado curso,los cuales se mostraran en una lista. -l usuario debe seleccionar un curso y en seguida se
debe presentar el nombre del profesor encargado del curso 9teora:, el nombre del jefe de
prctica 9laboratorio:, as como los 1orarios de teora y de laboratorio, respectivamente.
-l diseSo de la interfaz debe ser similar a la figura ue se muestra(
Microsoft Visual FoxProGUA DE LABORATORIO N .
O!"ti#os
Luego de completar este laboratorio, el estudiante ser capaz de(
Crear mJtodos definidos por el usuario.
$asar correctamente los argumentos a un mJtodo.
-jecutar mJtodos desde un formulario.
)mplementar mJtodos ue devuelvan m/ltiples valores.
8/13/2019 Practicas Microsoft Visual Foxpro
43/48
$o%si&"racio%"s
$ara el desarrollo del presente laboratorio d. deber crear una
carpeta $'(Fu%&VFP(La., para guardar sus trabajos correspondientes a este laboratorio.
A)licaci*% N 1
-ste primer ejercicio consiste en escribir un mJtodo ue reciba como argumento una
cadena de caracteres y la devuelva en forma inversa. $or ejemplo si se ingresa la cadenaCHM+NH deber retornar HN+MHC.
$ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el
formulario(
& etiuetas
& cajas de te#to
? botones de comando
-n seguida proceda a establecer las propiedades seg/n se indica(
For/1
ombre "rm$rueba[Cadena
Caption Cadena invertida
a#5utton .".P"also
in5utton .".P"also
La"l1
ombre LblCadena
Caption )ngrese una cadena(
La"l+
8/13/2019 Practicas Microsoft Visual Foxpro
44/48
ombre Lbl)nvertida
Caption Cadena invertida(
T"xt1
ombre 4#tCadena
-nabled .4.P!erdadero
T"xt+
ombre 4#t)nvertida
-nabled .".P"also
$o//a%&1
ombre Cmd+ceptar
Caption U+ceptar
Default .4.P!erdadero
$o//a%&+
ombre CmdLimpiar
Caption ULimpiar
$o//a%&,
ombre Cmd%alir
Cancel .4.P!erdadero
Caption U%alir
na vez establecidas las propiedades de la interfaz, proceda a crear un nuevo mJtodo,
denominado Cad)nvertida. $ara ello vaya al en/ "ormulario y elija la opcin Crear
nuevo mJtodo. %e debe presentar una ventana similar a la figura siguiente(
8/13/2019 Practicas Microsoft Visual Foxpro
45/48
)ngrese los datos ue se muestran y a continuacin dar clic; en el botn +gregar. Luego,dar doble clic; sobre el formulario y transcriba el siguiente cdigo(
O!"to' Fr/Pru"a8$a&"%a Proc"&i/i"%to' $a&I%#"rti&a
$arameterscCadena
n 7 Len9+lltrim9cCadena::
Dimensionc4emporal9n:
"orn) 7 0 4on
c4emporal9n): 7 %ub%tr9cCadena, n), 0:
e#t
cCadena 7 22
"or nO 7 n 4o 0 %tep P0
c)nvertida 7 c)nvertida 8 c4emporal9nO:
e#t
Meturnc)nvertida
O!"to' $/&Ac")tar Proc"&i/i"%to' $lic0
cCadena 7 41isform.4#tCadena.!alue
41isform.4#t)nvertida.!alue 7 41isform.Cad)nvertida9cCadena:
41isform.Mefres1
A)licaci*% N +
8/13/2019 Practicas Microsoft Visual Foxpro
46/48
-ste ejercicio consiste en crear un mJtodo ue reciba como argumento los apellidos y
nombres de un cliente 9en ese orden: y retorne los nombres y apellidos del mismo.
$ara el desarrollo de esta aplicacin proceda a crear un nuevo mJtodo denominadoom+pe. Luego transcriba el siguiente cdigo(
O!"to' Fr/Pru"a8No/A)" Proc"&i/i"%to' No/A)"
$arametersc+peom
n 7 Len9+lltrim9c+peom::
Dimensioncom9n:
Dimensionc+pe9n:
"orn) 7 0 4on
)f%ub%tr9c+peom, n), 0: 7 2,2 41en
-#it
-nd)f
e#t
c+pe 7 %ub%tr9c+peom, 0, n)P0:
com 7 %ub%tr9c+peom, n) 8 0, n P n):
com+pe 7 com 8 2 2 8 c+pe
Meturncom+pe
A)licaci*% N ,
$ara calcular el porcentaje de 1umedad de una muestra slida primero se pesa la muestra
9 :, luego se le lleva a la estufa de 0&' a 0@' \C por un tiempo de & 1oras
8/13/2019 Practicas Microsoft Visual Foxpro
47/48
apro#imadamente. + continuacin se deja enfriar la muestra y se pesa nuevamente 9 :."inalmente se realiza el siguiente clculo(
uestro trabajo consiste en crear un mJtodo ue permita realizar el clculo anterior.
$ara el desarrollo de esta aplicacin proceder a cera un nuevo mJtodo denominado
Wumedad. Luego ingrese el siguiente cdigo(
O!"to' Fr/Pru"a89u/"&a& Proc"&i/i"%to' 9u/"&a&
$arameters n0, n&
nW 7 0'' E 9n0 P n&: > n0
MeturnnW
O!"to' $/&Ac")tar Proc"&i/i"%to' $lic0
nasa0 7 !al941isform.4#tasa0.!alue:
nasa& 7 !al941isform.4#tasa&.!alue:
nWumedad 7 41isform.Wumedad9nasa0, nasa&:
41isform.4#tWumedad.!alue 7 %tr9nWumedad, 0', Q:
41isform.Mefres1
A)licaci*% N -
-scriba un mJtodo ue reciba como parmetro la fec1a de nacimiento del usuario. Deberetornar el signo zodiacal, el da de nacimiento y la cantidad de das vividos 1asta la fec1aactual. tilice un formulario de prueba para verificar la funcionalidad del mJtodo creado.
8/13/2019 Practicas Microsoft Visual Foxpro
48/48
u5"r"%cia
Metorne un /nico valor como una cadena de caracteres, en la cual estJn incluidos los
valores ue se piden. + manera de ejemplo considere lo siguiente(
cMpta 7 cNodiaco 8 cDiaacimiento 8 cDias!ividos 8 c"ec1aWoy
MeturncMpta
Fi% &"l Ni#"l I