Sie sind auf Seite 1von 77

GUA DE LABORATORIO Parte I

ELABORADO POR

CARLOS CASTILLO PERALTA cc_peralta@hotmail.com

INTRODUCCIN Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 1

La presente Gua de Laboratorio de Microsoft Visual Basic, se elabor con la finalidad de complementar la parte terica con la parte prctica del curso. Los problemas presentan un grado de dificultad gradual, es decir, en cada prctica primero se comienzan con problemas muy sencillos con la finalidad de que el estudiante esclarezca dudas y quede claro en los

conceptos asimilados en la teora, y luego en los problemas posteriores se a incrementando el ni el de dificultad. ariedad de materias y contiene a lo largo las de arios a$os de de los

!sta gua e"plora una gran muc#os problemas recopilados que

e"periencia.

!spero

satisfaga

necesidades

estudiantes y colegas, ya que #a sido elaborada teniendo en cuenta los ob%eti os de aprendiza%e del curso. &i desean compartirla con otros colegas, me agradara

muc#o que lo #icieran, con la 'nica condicin de que siempre se respete el derec#o del autor. (esde ya les deseo la me%or de las suertes en el

aprendiza%e de Microsoft Visual Basic.

Lima, (iciembre del )***

Carlos Castillo Peralta

Microsoft
GUA DE LABORATORIO N 1 O !eti"o#

Visual Basic

Luego de completar este laboratorio, el estudiante ser capaz de+ ,dentificar los elementos del entorno integrado de

desarrollo de Microsoft Visual Basic -.*. .$adir controles a un formulario. !stablecer las propiedades de los controles. /raba%ar con procedimientos de e entos. 0rear una aplicacin simple con Microsoft Visual Basic. Co$#i%eracio$e# 1ara el desarrollo del presente laboratorio 2d. deber crear una carpeta C&'()$%*B'La 1, para guardar sus traba%os correspondientes a este laboratorio. Aplicaci+$ N 1 !laborar una aplicacin que permita calcular el salario neto de un traba%ador en funcin del n'mero de #oras traba%adas, pago por #ora de traba%o y un descuento fi%o al sueldo bruto del )* por 3**. Los clculos a efectuar para obtener el salario neto de un traba%ador se muestran a continuacin+ &alarioBruto 4 5oras/raba%adas 6 1ago1or5ora (escuento 4 *.) 6 &alarioBruto

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

&alario7eto 4 &alarioBruto 8 (escuento !l dise$o de la interfaz debe ser similar a la figura mostrada+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ ) marcos - etiquetas - ca%as de te"to 9 botones de comando 2na ez ubicados los controles, establezca las propiedades

seg'n se indica+ (orm1 7ombre Border&tyle 0aption Mo eable :rm&alario7eto 98:i"ed (ialog 0lculo del salario neto :alse

&tart2p1osition (rame1 7ombre 0aption (rame, 7ombre 0aption La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption La el7ombre .uto&ize 0aption La el. 7ombre .uto&ize 0aption La el/ 7ombre .uto&ize 0aption La el0 7ombre .uto&ize 0aption Te1t1

)80enter&creen

:ra,ngreso ,ngreso de datos+

:ra&alida &alida de datos+

Lbl.pellidos7ombres /rue .pellidos y nombres+

Lbl5oras/raba%adas /rue 5oras traba%adas+

Lbl1ago1or5ora /rue 1ago por #ora &;.

Lbl&alarioBruto /rue &alario bruto &;.

Lbl(escuento /rue (escuento &;.

Lbl&alario7eto /rue &alario neto &;.

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

7ombre /e"t Te1t, 7ombre /e"t Te1t7ombre /e"t Te1t. 7ombre /e"t Te1t/ 7ombre /e"t Te1t0 7ombre /e"t Comma$%1 7ombre 0aption Comma$%, 7ombre 0aption Comma$%7ombre 0aption

/"t.pellidos7ombres

/"t5oras/raba%adas

/"t1ago1or5ora

/"t&alarioBruto

/"t(escuento

/"t&alario7eto

0md.ceptar &.ceptar

0mdLimpiar &Limpiar

0md&alir &&alir

Luego de establecer las propiedades para los controles, debe a$adir cdigo a la aplicacin. 1ara ello #aga doble clic< sobre el botn .ceptar e ingrese el siguiente cdigo+

1ri ate &ub 0md.ceptar=0lic<>? (im 5oras/raba%adas .s ,nteger, 1ago1or5ora .s (ouble (im &alarioBruto .s (ouble (im (escuento .s (ouble (im &alario7eto .s (ouble 5oras/raba%adas 4 Val>/"t5oras/raba%adas? 1ago1or5ora 4 Val>/"t1ago1or5ora? &alarioBruto 4 5oras/raba%adas 6 1ago1or5ora (escuento 4 *.) 6 &alarioBruto &alario7eto 4 &alarioBruto 8 (escuento /"t&alarioBruto 4 &tr>&alarioBruto? /"t(escuento 4 &tr>(escuento? /"t&alario7eto 4 &tr>&alario7eto? !nd &ub . continuacin #aga doble clic< sobre el botn &alir y a$ada el siguiente cdigo+ 1ri ate &ub 0md&alir=0lic<>? !nd !nd &ub Guarde y luego e%ecute la aplicacin que acaba de crear. 1ruebe ingresando diferentes alores.

Luego, #aga doble clic< sobre el botn Limpiar y a$ada el siguiente cdigo+ 1ri ate &ub 0mdLimpiar=0lic<>? /"t.pellidos7ombres 4 @A /"t5oras/raba%adas 4 @A /"t1ago1or5ora 4 @A /"t&alarioBruto 4 @A Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 7

/"t(escuento 4 @A /"t&alario7eto 4 @A /"t.pellidos7ombres.&et:ocus !nd &ub Guarde y e%ecute su aplicacin. B0mo afecta el cdigo a$adido en el botn Limpiar a la aplicacinC. .note sus obser aciones. Aplicaci+$ N , !l men' de un restaurante rpido se muestra a continuacin+ 2EN3 5amburguesa 0er eza Gaseosa !nsalada &alc#ic#as Gefresco &opa 1ostre 4RECIO 567.8 ).E* F.** 9.** 3.E* ).** 3.** 3.E* 3.E* &e desea construir una aplicacin que calcule las entas totales al final del da, as como los impuestos a pagar >3D por 3**?.

La interfaz de entrada y salida deber ser similar a la figura mostrada a continuacin+

1ara el dise$o del cuadro de men' utilizaremos el control Microsoft 5ierarc#ical :le"Grid. 1ara tal fin, seleccione el Men' 1royecto y eli%a la opcin 0omponentes+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

. continuacin acti e la casilla de

erificacin Microsoft

5ierarc#ical :le"Grid 0ontrol -.* HL!(B y #aga clic< sobre el botn .ceptar. !n seguida este control se a$adir al 0uadro de 5erramientas. 1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ 3* etiquetas 3* ca%as de te"to 3 control M&5:le"Grid 9 botones de comando !n seguida, elabore el dise$o de entrada y salida. 1ara ello proceda a establecer las propiedades seg'n se indica a continuacin+ (orm1 7ombre Border&tyle 0aption Mo eable &tart2p1osition La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption La el7ombre .uto&ize LblGaseosa /rue
10

:rmGestaurante 98:i"ed (ialog Gestaurante :alse )80enter&creen

Lbl5amburguesa /rue 5amburguesa+

Lbl0er eza /rue 0er eza+

0aption La el. 7ombre .uto&ize 0aption La el/ 7ombre .uto&ize 0aption La el0 7ombre .uto&ize 0aption La el9 7ombre .uto&ize 0aption La el: 7ombre .uto&ize 0aption La el; 7ombre 0aption La el1< 7ombre 0aption 26=(le1Gri%1 7ombre :ont :ont:i"ed Te1t1 7ombre

Gaseosa+

Lbl!nsalada /rue !nsalada+

Lbl&alc#ic#as /rue &alc#ic#as+

LblGefresco /rue Gefresco+

Lbl&opa /rue &opa+

Lbl1ostre /rue 1ostre+

LblVenta/otal Venta total &;. Lbl,mpuesto ,mpuesto &;.

GrdMenu .rial >7egrita 3*? .rial >7egrita 3*?

/"t5amburguesa cc_peralta@hotmail.com 11

Elaborado por Carlos Castillo Peralta

/e"t Te1t, 7ombre /e"t Te1t7ombre /e"t Te1t. 7ombre /e"t Te1t/ 7ombre /e"t Te1t0 7ombre /e"t Te1t9 7ombre /e"t Te1t: 7ombre /e"t Te1t; 7ombre Loc<ed /e"t Te1t1< 7ombre Loc<ed /e"t Comma$%1 /"t,mpuesto /rue /"tVenta/otal /rue /"t1ostre /"t&opa /"tGefresco /"t&alc#ic#as /"t!nsalada /"tGaseosa /"t0er eza

12

7ombre 0aption Comma$%, 7ombre 0aption Comma$%7ombre 0aption 1icture &tyle

0md.ceptar &.ceptar

0mdLimpiar &Limpiar

0md&alir &&alir 0+I.rc#i os de programaIMicrosoft Visual &tudioI0ommonIGrap#icsI,consI.rroJsI1oint*F.ico 38Grap#ical

!n primer lugar debemos cargar los datos a la cuadrcula. !sto lo amos a realizar en tiempo de e%ecucin al momento de cargarse en memoria el formulario. 1ara ello, #aga doble clic< sobre el formulario y a$ada el siguiente cdigo+ 1ri ate &ub :orm=Load>? GrdMenu.0ols 4 ) GrdMenu.GoJs 4 K GrdMenu.:i"ed0ols 4 * GrdMenu.:i"edGoJs 4 3 GrdMenu./e"t.rray>*? 4 @Men'A GrdMenu./e"t.rray>3? 4 @1recioA GrdMenu./e"t.rray>)? 4 @5amburguesaA GrdMenu./e"t.rray>9? 4 @).E*A GrdMenu./e"t.rray>F? 4 @0er ezaA GrdMenu./e"t.rray>E? 4 @F.**A GrdMenu./e"t.rray>-? 4 @GaseosaA GrdMenu./e"t.rray>L? 4 @9.**A GrdMenu./e"t.rray>D? 4 @!nsaladaA GrdMenu./e"t.rray>K? 4 @3.E*A Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 13

GrdMenu./e"t.rray>3*? 4 @&alc#ic#asA GrdMenu./e"t.rray>33? 4 @).**A GrdMenu./e"t.rray>3)? 4 @GefrescoA GrdMenu./e"t.rray>39? 4 @3.**A GrdMenu./e"t.rray>3F? 4 @&opaA GrdMenu./e"t.rray>3E? 4 @3.E*A GrdMenu./e"t.rray>3-? 4 @1ostreA GrdMenu./e"t.rray>3L? 4 @3.E*A !nd &ub Luego debemos a$adir el cdigo que se encargar de

realizar los clculos. 1ara tal fin #aga doble clic< sobre el botn .ceptar y proceda a ingresar lo siguiente+ 1ri ate &ub 0md.ceptar=0lic<>? (im 5amburguesa .s ,nteger, 0er eza .s ,nteger (im Gaseosa .s ,nteger, !nsalada .s ,nteger (im &alc#ic#as .s ,nteger, Gefresco .s ,nteger (im &opa .s ,nteger, 1ostre .s ,nteger (im Venta/otal .s (ouble, ,mpuesto .s (ouble 5amburguesa 4 Val>/"t5amburguesa? 0er eza 4 Val>/"t0er eza? Gaseosa 4 Val>/"tGaseosa? !nsalada 4 Val>/"t!nsalada? &alc#ic#as 4 Val>/"t&alc#ic#as? Gefresco 4 Val>/"tGefresco? &opa 4 Val>/"t&opa? 1ostre 4 Val>/"t1ostre? Venta/otal 4 5amburguesa 6 ).E M 0er eza 6 F.* = M Gaseosa 6 9.* M !nsalada 6 3.E M &alc#ic#as 6 ).* = M Gefresco 6 3.* M &opa 6 3.E M 1ostre 6 3.E ,mpuesto 4 *.3D 6 Venta/otal

14

/"tVenta/otal 4 &tr>Venta/otal? /"t,mpuesto 4 &tr>,mpuesto? !nd &ub Luego, #aga doble clic< sobre el botn Limpiar y a$ada el siguiente cdigo+ 1ri ate &ub 0mdLimpiar=0lic<>? /"t5amburguesa 4 @A + /"t0er eza 4 @A /"tGaseosa 4 @A + /"t!nsalada 4 @A /"t&alc#ic#as 4 @A + /"tGefresco 4 @A /"t&opa 4 @A + /"t1ostre 4 @A /"tVenta/otal 4 @A + /"t,mpuesto 4 @A /"t5amburguesa.&et:ocus !nd &ub . continuacin #aga doble clic< sobre el botn &alir y a$ada el siguiente cdigo+ 1ri ate &ub 0md&alir=0lic<>? !nd !nd &ub Aplicaci+$ N !laborar una aplicacin que permita calcular la edad de una persona a partir de su fec#a de nacimiento. !l dise$o de la interfaz debe ser similar a la figura mostrada+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

15

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ ) etiquetas ) ca%as de te"to 9 botones de comando Luego, proceda a establecer las propiedades seg'n se

indica a continuacin+ (orm1 7ombre Border&tyle 0aption La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption Te1t1 7ombre /e"t /"t:ec7ac Lbl!dad /rue &u edad es+ :rm!dad 98:i"ed (ialog 0alcula la edad de una persona Lbl:ec7ac /rue :ec#a de nacimiento+

16

Te1t, 7ombre Loc<ed /e"t Comma$%1 7ombre 0aption (efault Comma$%, 7ombre 0aption Comma$%7ombre 0md&alir 0ancel /rue 0aption &&alir !n seguida proceda a ingresar el siguiente cdigo+ 1ri ate &ub 0md.ceptar=0lic<>? (im :ec7ac .s (ate, !dad .s ,nteger :ec7ac 4 0(ate>/"t:ec7ac? !dad 4 0,nt>>(ate 8 :ec7ac? ; 9-E? /"t!dad 4 &tr>!dad? & @ a$osA !nd &ub &e de%a como e%ercicio para el estudiante el cdigo 0mdLimpiar &Limpiar 0md.ceptar &.ceptar /rue /"t!dad /rue

asociado con los botones Limpiar y &alir, respecti amente. Aplicaci+$ N . &e tiene un ca%ero automtico el cual permite manipular cierta cantidad de dinero &;. para 3*.**, lo cual dispone &;. de los siguientes billetes+ &;. )*.**, E*.**,

&;. 3**.** y &;. )**.**. !laborar una aplicacin que permita la

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

17

lectura de la cantidad a retirar e indique el menor n'mero de billetes a utilizar.

0reo que a estas alturas 2d. ya entendi como funciona esto. 1or ello, esta aplicacin se de%a como e%ercicio para el estudiante.

Microsoft
GUA DE LABORATORIO N , O !eti"o#

Visual Basic

Luego de completar este laboratorio, el estudiante ser capaz de+ ,mplementar 2sar aplicaciones utilizando de de erificacin dilogo y estructuras de botones de para control para

selecti as. casillas ca%as opcin alternar entre uno o ms 2tilizar mensa%es. alores. predefinidas isualizar

18

Co$#i%eracio$e# 1ara el desarrollo del presente laboratorio 2d. deber crear una carpeta C&'()$%*B'La ,, para guardar sus traba%os correspondientes a este laboratorio. Aplicaci+$ N 1 &e desea elaborar la boleta de pago de los traba%adores de una fbrica. 1ara ello se cuenta con los siguientes datos de entrada+ .pellidos y nombres del traba%ador &ueldo bsico 5oras e"tras traba%adas .dems, se sabe que los traba%adores laboran en dos

turnos+ diurno y nocturno. N que la tarifa por las #oras e"tras diurnas es de 3* soles y por las #oras e"tras nocturnas es de 3E soles. Los descuentos a aplicar son sobre el sueldo bsico y se obtienen de la siguiente manera+ Genta 4 &ueldoBasico 6 *.3 :ona i 4 &ueldoBasico 6 *.*L .:1 4 &ueldoBasico 6 *.*9 :inalmente el sueldo neto del traba%ador se calcula

mediante las siguientes e"presiones+ ,ngresos 4 &ueldoBasico M 5oras!"tras 6 1ago5ora!"tra !gresos 4 Genta M :ona i M .:1 19

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

&ueldo7eto 4 ,ngresos 8 !gresos !l dise$o de la interfaz deber ser similar a la figura mostrada+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ ) marcos E etiquetas D ca%as de te"to ) botones de opcin 9 casillas de erificacin 9 botones de comando Luego, proceda a establecer las propiedades seg'n se

indica a continuacin+

20

(orm1 7ombre Border&tyle 0aption Mo eable La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption La el7ombre .uto&ize 0aption La el. 7ombre .uto&ize 0aption La el/ 7ombre .uto&ize 0aption Te1t1 7ombre /e"t Te1t, 7ombre /e"t Te1t7ombre /"t5oras!"tras cc_peralta@hotmail.com 21 /"t&ueldoBasico /"t/raba%ador Lbl&ueldo7eto /rue &ueldo neto &;. Lbl1ago5ora!"tra /rue 1ago #ora e"tra &;. Lbl5oras!"tras /rue 5oras e"tras+ Lbl&ueldoBasico /rue &ueldo Bruto &;. Lbl/raba%ador /rue /raba%ador+ :rmBoleta(e1ago 98:i"ed (ialog Boleta de pago :alse

Elaborado por Carlos Castillo Peralta

/e"t Te1t. 7ombre Bac<0olor /e"t Te1t/ 7ombre Bac<0olor Loc<ed /e"t Te1t0 7ombre Bac<0olor Loc<ed /e"t Te1t9 7ombre Bac<0olor Loc<ed /e"t Te1t: 7ombre Bac<0olor Loc<ed /e"t Optio$1 7ombre 0aption Value Optio$, 7ombre 0aption Value Hpt7octurno 7octurno :alse Hpt(iurno (iurno /rue /"t&ueldo7eto &5D******F& /rue /"t.:1 &5D******F& /rue /"t:ona i &5D******F& /rue /"tGenta &5D******F& /rue /"t1ago5ora!"tra &5D******F&

22

Chec>1 7ombre 0aption Chec>, 7ombre 0aption Chec>7ombre 0aption Comma$%1 7ombre 0aption (efault Comma$%, 7ombre 0aption Comma$%7ombre 0ancel 0aption 2na 0md&alir /rue &&alir 0mdLimpiar &Limpiar 0md.ceptar &.ceptar /rue 0#<.:1 .:1 0#<:ona i :ona i 0#<Genta Genta

ez establecidas las propiedades, proceda a ingresar

el cdigo que se indica a continuacin+ 1ri ate &ub 0md.ceptar=0lic<>? (im &ueldoBasico .s (ouble (im 5oras!"tras .s ,nteger, 1ago5ora!"tra .s (ouble (im Genta .s (ouble, :ona i .s (ouble, .:1 .s (ouble (im ,ngresos .s (ouble, !gresos .s (ouble (im &ueldo7eto .s (ouble &ueldoBasico 4 Val>/"t&ueldoBasico? 5oras!"tras 4 Val>/"t5oras!"tras? Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 23

,f Hpt(iurno /#en 1ago5ora!"tra 4 3* !nd ,f ,f Hpt7octurno /#en 1ago5ora!"tra 4 3E !nd ,f ,f 0#<Genta.Value /#en Genta 4 &ueldoBasico 6 *.3 !lse Genta 4 * !nd ,f ,f 0#<:ona i.Value /#en :ona i 4 &ueldoBasico 6 *.*L !lse :ona i 4 * !nd ,f ,f 0#<.:1.Value /#en .:1 4 &ueldoBasico 6 *.*9 !lse .:1 4 * !nd ,f ,ngresos 4 &ueldoBasico M 5oras!"tras 6 1ago5ora!"tra !gresos 4 Genta M :ona i M .:1 &ueldo7eto 4 ,ngresos 8 !gresos /"t1ago5ora!"tra 4 &tr>1ago5ora!"tra? /"tGenta 4 &tr>Genta? /"t:ona i 4 &tr>:ona i? + /"t.:1 4 &tr>.:1? /"t&ueldo7eto 4 &tr>&ueldo7eto? !nd &ub 1ri ate &ub 0md&alir=0lic<>?

24

!nd !nd &ub Aplicaci+$ N , 0uatro notas entre * y )* representan las calificaciones de un estudiante de un curso de programacin. !laborar una aplicacin para obtener el promedio de esas calificaciones y isualizar su puntuacin de acuerdo al siguiente cuadro+ 4rome%io 3K8)* 3-83D 3383E -83* *8E 4)$t)aci+$ . B 0 ( !

!l dise$o de la interfaz deber ser similar a la figura mostrada+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ L etiquetas L ca%as de te"to Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 25

9 botones de comando Luego, proceda a establecer las propiedades seg'n se indica a continuacin+ (orm1 7ombre Border&tyle 0aption La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption La el7ombre .uto&ize 0aption La el. 7ombre .uto&ize 0aption La el/ 7ombre .uto&ize 0aption La el0 7ombre .uto&ize 0aption Lbl1romedio /rue 1romedio+ Lbl7F /rue 7ota F+ Lbl79 /rue 7ota 9+ Lbl7) /rue 7ota )+ Lbl73 /rue 7ota 3+ Lbl.lumno /rue .lumno+ :rm7otas 98:i"ed (ialog 1untuacin de un estudiante

26

La el9 7ombre .uto&ize 0aption Te1t1 7ombre /e"t Te1t, 7ombre /e"t Te1t7ombre /e"t Te1t. 7ombre /e"t Te1t/ 7ombre /e"t /"t7F /"t79 /"t7) /"t73 /"t.lumno Lbl1untuacion /rue 1untuacin+

Te1t0 7ombre Bac<0olor Loc<ed /e"t Te1t9 7ombre Bac<0olor Loc<ed /e"t /"t1untuacion &5D******F& /rue /"t1romedio &5D******F& /rue

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

27

Comma$%1 7ombre 0aption (efault Comma$%, 7ombre 0aption Comma$%7ombre 0ancel 0aption 2na 0md&alir /rue &&alir 0mdLimpiar &Limpiar 0md.ceptar &.ceptar /rue

ez establecidas las propiedades, proceda a ingresar

el cdigo que se indica+ 1ri ate &ub 0md.ceptar=0lic<>? (im 73 .s (ouble, 7) .s (ouble, 79 .s (ouble, 7F .s (ouble (im 1romedio .s ,nteger 73 4 Val>/"t73? + 7) 4 Val>/"t7)? 79 4 Val>/"t79? + 7F 4 Val>/"t7F? 1romedio 4 0,nt>>73 M 7) M 79 M 7F? ; F? /"t1romedio 4 &tr>1romedio? ,f 1romedio O4 3K .nd 1romedio P4 )* /#en /"t1untuacion 4 @.A !lse,f 1romedio O4 3- .nd 1romedio P4 3D /#en /"t1untuacion 4 @BA !lse,f 1romedio O4 33 .nd 1romedio P4 3E /#en /"t1untuacion 4 @0A !lse,f 1romedio O4 - .nd 1romedio P4 3* /#en /"t1untuacion 4 @(A !lse,f 1romedio O4 * .nd 1romedio P4 E /#en /"t1untuacion 4 @BA

28

!lse+ MsgBo" @!rror de datosA, !nd ,f !nd &ub Aplicaci+$ N -

b0ritical, @Mensa%eA

!scribir un aplicacin que acepte fec#as como tres n'meros >dd, mm, aaaa? y las isualice del modo usual. . manera de e%emplo considere lo siguiente+

!n caso de que el usuario ingrese alg'n dato incorrecto >por e%emplo 39 como un n'mero de mes?, se debe siguiente mensa%e+ isualizar el

0uando el usuario #aga clic< en el botn &alir, se debe obser ar el siguiente mensa%e+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

29

!n usuario

caso elige

de la

que

el

usuario 7o, se

eli%a debe

la

opcin

&i, con

la la

aplicacin debe terminar. !n caso contrario, es decir si el opcin proseguir aplicacin. 1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ F etiquetas 9 ca%as de te"to 3 marco 9 botones de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption La el1 7ombre .uto&ize 0aption La el, 7ombre .uto&ize 0aption LblMes /rue Mes+
30

:rm:ec#a 98:i"ed (ialog :ec#a en letras

Lbl(ia /rue (a+

La el7ombre .uto&ize 0aption La el. 7ombre .uto&ize 0aption Te1t1 7ombre /e"t Te1t, 7ombre /e"t Te1t7ombre /e"t Comma$%1 7ombre 0aption (efault Comma$%, 7ombre 0aption Comma$%7ombre 0aption 2na ez 0md&alir &&alir establecidas las propiedades de la interfaz 0mdLimpiar &Limpiar 0md.ceptar &.ceptar /rue /"t.nno /"tMes /"t(ia Lbl:ec#a /rue Lbl.nno /rue .$o+

proceda a ingresar el siguiente cdigo+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

31

1ri ate &ub 0md.ceptar=0lic<>? (im 0adMes .s &tring, Mes .s ,nteger Mes 4 Val>/"tMes? &elect 0ase Mes 0ase 3+ 0ase )+ 0ase 9+ 0ase F+ 0ase E+ 0ase -+ 0ase L+ 0ase D+ 0ase K+ 0adMes 4 @!neroA 0adMes 4 @:ebreroA 0adMes 4 @MarzoA 0adMes 4 @.brilA 0adMes 4 @MayoA 0adMes 4 @QunioA 0adMes 4 @QulioA 0adMes 4 @.gostoA 0adMes 4 @&etiembreA

0ase 3*+ 0adMes 4 @HctubreA 0ase 33+ 0adMes 4 @7o iembreA 0ase 3)+ 0adMes 4 @(iciembreA 0ase !lse MsgBo" @!rror de datos...A, 0all 0mdLimpiar=0lic< !"it &ub !nd &elect Lbl:ec#a 4 /"t(ia & @ de A & 0adMes & @ de A & /"t.nno !nd &ub 1ri ate &ub 0mdLimpiar=0lic<>? /"t(ia 4 @A + /"tMes 4 @A + /"t.nno 4 @A /"t(ia.&et:ocus !nd &ub 1ri ate &ub 0md&alir=0lic<>? ,f MsgBo">@B(esea terminar la aplicacinCA, = b0ritical, @Mensa%eA

32

bRuestion M !nd

bNes7o, @1reguntaA? 4

bNes /#en

!lse+ 0all 0mdLimpiar=0lic< !nd ,f !nd &ub Aplicaci+$ N . 2n restaurante ofrece un descuento del 3*% para consumos entre casos &;. no 9*.** se y &;. E*.**S tipo un de descuento descuento. del )* % para una consumos mayores a &;. E*.** nue os solesS para todos los dems aplica ning'n !laborar aplicacin que permita determinar el importe a pagar por el consumidor. !l dise$o de la interfaz y otras consideraciones se de%an a su criterio.

Microsoft
GUA DE LABORATORIO N O !eti"o#

Visual Basic

Luego de completar este laboratorio, el estudiante ser capaz de+ ,mplementar 0ambiar las aplicaciones utilizando propiedades de los estructuras de en control de

repetiti as. controles tiempo e%ecucin. Co$#i%eracio$e#

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

33

1ara el desarrollo del presente laboratorio 2d. deber crear una carpeta C&'()$%*B'La -, para guardar sus traba%os correspondientes a este laboratorio. Aplicaci+$ N 1 !scribir una aplicacin que lea un n'mero entero y muestre la tabla de multiplicar de dic#o n'mero. !l dise$o de entrada y salida debe ser similar al siguiente+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ 3 etiqueta ) ca%as de te"to 3 botn de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption :rm/abla 98:i"ed (ialog /abla de multiplicar

34

La el1 7ombre 0aption Te1t1 7ombre /e"t Te1t, 7ombre MultiLine Loc<ed &crollBars /e"t Comma$%1 7ombre 0mdLimpiar 0aption &Limpiar 2na ez dise$ada la interfaz, proceda a ingresar el cdigo que se indica a continuacin+ 1ri ate &ub /"t7umero=0#ange>? ,f ,s7umeric>/"t7umero? /#en (im 7 .s ,nteger, 1 .s ,nteger, , .s ,nteger (im & .s &tring 7 4 Val>/"t7umero? & 4 @A :or , 4 * /o 3) 1 4 7 6 , & 4 & & 7 & @ 6 A & , & @ 4 A & 1 & 7e"t , /"t/abla 4 & !lse,f /"t7umero 4 @A /#en !"it &ub !lse+ MsgBo" @,ngrese un n'meroA, Elaborado por Carlos Castillo Peralta b0ritical, @Mensa%eA 35 b0rLf /"t/abla /rue /rue )8Vertical /"t7umero Lbl7umero ,ngrese un n'mero+

cc_peralta@hotmail.com

/"t/abla 4 @A !nd ,f !nd &ub 1ri ate &ub 0mdLimpiar=0lic<>? /"t7umero 4 @A + /"t/abla 4 @A /"t7umero.&et:ocus !nd &ub Aplicaci+$ N , 2n n'mero perfecto es un entero positi o, que es igual a la suma de todos los enteros positi os >e"cluido el mismo? que son di isores del n'mero. !l primer n'mero perfecto es -, ya que los di isores de - son 3, ), 9 y 3 M ) M 9 4 -. !scribir una aplicacin que encuentre los tres primeros n'meros perfectos. !l dise$o de la interfaz debe ser similar a la figura mostrada+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ 3 marco 3 ca%a de te"to

36

!n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption (rame1 7ombre 0aption Te1t1 7ombre /"t1erfecto MultiLine /rue /e"t 2na ez establecidas las propiedades proceda a ingresar el cdigo que se indica a continuacin+ 1ri ate &ub :orm=Load>? (im 7 .s Long, , .s Long, & .s Long (im T .s ,nteger, 0ad .s &tring 7 4 3 + T 4 * + 0ad 4 @A U#ile /rue & 4 * :or , 4 3 /o >7 8 3? ,f 7 Mod , 4 * /#en & 4 & M , 7e"t , ,f 7 4 & /#en 0ad 4 0ad & 7 & T 4 T M 3 !nd ,f ,f T 4 9 /#en /"t1erfecto 4 0ad Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 37 b0rLf :ra1erfecto 7'mero perfecto :rm7umero1erfecto 98:i"ed (ialog Los 9 primeros n'meros perfectos

!"it &ub !nd ,f 7 4 7 M 3 Uend !nd &ub Aplicaci+$ N 0onstruya una aplicacin que permita el ingreso de un n'mero entero y muestre en pantalla la siguiente informacin+ 3? 0antidad de cifras, )? &uma de cifras impares, 9? &uma de cifras pares, F? &uma total de cifras, E? 0ifra mayor, -? 0ifra menor y L? (i isores de dic#o n'mero. !l dise$o de la interfaz debe ser similar a la figura siguiente+

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+

38

F marcos L etiquetas D ca%as de te"to 3 botn de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption Mo eable &tart2p1osition (rame1 7ombre 0aption (rame, 7ombre 0aption (rame7ombre 0aption (rame. 7ombre 0aption La el1 7ombre .uto&ize 0aption Lbl7umero /rue ,ngrese un n'mero+ cc_peralta@hotmail.com 39 :ra&alir :ra(i isores (i isores :ra&alida :ra!ntrada :rm7umero1erfecto 98:i"ed (ialog Los 9 primeros n'meros perfectos :alse )80enter&creen

Elaborado por Carlos Castillo Peralta

La el, 7ombre .uto&ize 0aption La el7ombre .uto&ize 0aption La el. 7ombre .uto&ize 0aption La el/ 7ombre .uto&ize 0aption La el0 7ombre .uto&ize 0aption La el9 7ombre .uto&ize 0aption Te1t1 7ombre /e"t Te1t, 7ombre Loc<ed /e"t Te1t/"t0ant0ifras /rue /"t7umero Lbl0ifraMenor /rue 0ifra menor+ Lbl0ifraMayor /rue 0ifra mayor+ Lbl&um/otal /rue &uma total de cifras+ Lbl&um1ares /rue &uma de cifras pares+ Lbl&um,mpares /rue &uma de cifras impares+ Lbl0ant0ifras /rue 0antidad de cifras+

40

7ombre Loc<ed /e"t Te1t. 7ombre Loc<ed /e"t Te1t/ 7ombre Loc<ed /e"t Te1t0 7ombre Loc<ed /e"t Te1t9 7ombre Loc<ed /e"t Te1t: 7ombre MultiLine Loc<ed &crollBars /e"t Comma$%7ombre 0aption 1icture &tyle 2na

/"t&um,mpares /rue

/"t&um1ares /rue

/"t&um/otal /rue

/"t0ifraMayor /rue

/"t0ifraMenor /rue

/"t(i isores /rue /rue )8Vertical

0md&alir &&alir 0+I:undVBIBitmapsI!"it.bmp 38Grap#ical

ez establecidas las propiedades proceda #a ingresar

el cdigo que se indica a continuacin+ 1ri ate &ub 0md.ceptar=0lic<>? Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 41

,f ,s7umeric>/"t7umero? /#en (im & .s ,nteger, &, .s ,nteger, &1 .s ,nteger (im May .s ,nteger, Min .s ,nteger (im 0ad .s &tring (im , .s ,nteger, Q .s ,nteger 7 4 0Lng>/"t7umero? M 4 0Lng>/"t7umero? 0ad 4 @A , 4 * Q 4 3 & 4 &1 4 &, 4 * :or Q 4 3 /o 7 ,f >7 Mod Q 4 *? /#en 0ad 4 0ad & Q & !nd ,f 7e"t Q U#ile >7 O *? ,f >>7 Mod 3*? Mod )? 4 * /#en &1 4 &1 M >7 Mod 3*? !lse &, 4 &, M >7 Mod 3*? !nd ,f & 4 & M >7 Mod 3*? 7 4 7 I 3* , 4 , M 3 Uend May 4 Mid>/"t7umero, 3, 3? Men 4 May U#ile >M O *? ,f May P >M Mod 3*? /#en b0rLf

42

May 4 M Mod 3* !nd ,f ,f Men O >M Mod 3*? /#en Men 4 M Mod 3* !nd ,f M 4 M I 3* Uend /"t0ant0ifras 4 &tr>,? /"t&um,mpares 4 &tr>&,? /"t&um1ares 4 &tr>&1? /"t&um/otal 4 &tr>&? /"t0ifraMayor 4 &tr>May? /"t0ifraMenor 4 &tr>Men? /"t(i isores 4 0ad !lse MsgBo" @(ebe ingresar un n'meroA, /"t7umero.&et:ocus !nd ,f !nd &ub 1ri ate &ub 0md&alir=0lic<>? ,f MsgBo">@B(esea terminar la aplicacinCA, = bRuestion M !nd !lse 0ancel 4 /rue /"t7umero.&et:ocus !nd ,f !nd &ub bNes7o, V1reguntaV? 4 bNes /#en b0ritical, @Mensa%eA

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

43

Aplicaci+$ N . 2n centro numWrico es un n'mero que separa una lista de n'meros enteros >comenzando en 3? en dos grupos de n'meros, cuyas sumas son iguales. !l primer centro numWrico es el -, el cual separa la lista >3 a D? en los grupos+ >3S )S 9S FS E? y >LS D? cuyas sumas son ambas iguales a 3E. !l segundo centro numWrico es el 9E, el cual separa la lista >3 a FK? en los grupos+ >3 a 9F? y >9- a FK? cuyas sumas son ambas iguales a EKE. &e pide elaborar una aplicacin que calcule los centros numWricos entre 3 y 7. !l dise$o de la interfaz y otras consideraciones se de%an a su criterio.

44

Microsoft
GUA DE LABORATORIO N . O !eti"o#

Visual Basic

Luego de completar este laboratorio, el estudiante ser capaz de+ Manipular y realizar operaciones con arreglos. 0rear una estructura y realizar operaciones con los campos de la misma. ,mplementar arreglos de estructuras. /raba%ar con listas desplegables y cuadros combinados. Co$#i%eracio$e# 1ara el desarrollo del presente laboratorio 2d. deber crear una carpeta C&'()$%*B'La . para guardar sus traba%os correspondientes a este laboratorio. Aplicaci+$ N 1 !labore una aplicacin que permita leer 7 n'meros de tipo entero, y a continuacin los isualice ordenados en forma ascendente o descendente.

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

45

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ 9 marcos 3 ca%a de te"to 3 control lista ) botones de opcin 9 botones de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption Mo eable (rame1 7ombre 0aption (rame, 7ombre 0aption (rame:raLista Lista de n'meros+ :ra7umero ,ngrese un nue o n'mero+ :rmBurbu%a 98:i"ed (ialog Hrdenacin por burbu%a :alse

46

7ombre 0aption Te1t1 7ombre /e"t Li#t1 7ombre List Optio$1 7ombre 0aption Value Optio$, 7ombre 0aption Value Comma$%1 7ombre 0aption (efault Comma$%, 7ombre 0aption Comma$%7ombre 0aption 1icture

:raHrden Hrden+

/"t7umero

Lst7umero

Hpt.scendente .scendente /rue

Hpt(escendente (escendente :alse

0md.nnadir &.$adir /rue

0mdHrdenar &Hrdenar

0md&alir &&alir 0+I.rc#i os de programaIMicrosoft Visual &tudioI0ommonIGrap#icsI,consI.rroJsI 1oint*F.ico 38Grap#ical

&tyle

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

47

2na

ez establecidas las propiedades proceda a ingresar el

cdigo que se indica a continuacin+ 1ri ate &ub 0md.ceptar=0lic<>? ,f ,s7umeric>/"t7umero./e"t? /#en Lst7umero..dd,tem /"t7umero./e"t /"t7umero./e"t 4 @A /"t7umero.&et:ocus !lse MsgBo" @,ngrese un n'meroA, /"t7umero.&el&tart 4 * /"t7umero.&elLengt# 4 Len>/"t7umero./e"t? /"t7umero.&et:ocus !nd ,f !nd &ub 1ri ate &ub 0mdHrdenar=0lic<>? (im , .s ,nteger, Q .s ,nteger, / .s ,nteger, 7 .s ,nteger (im .>? .s ,nteger 7 4 Lst7umero.List0ount Ge(im .>7? :or , 4 * /o 7 8 3 .>,? 4 Lst7umero.List>,? 7e"t , ,f Hpt.scendente.Value /#en :or , 4 * /o 7 8 ) :or Q 4 , M 3 /o 7 8 3 ,f .>,? O .>Q? /#en / 4 .>,? .>,? 4 .>Q? .>Q? 4 / !nd ,f b0ritical, @Mensa%eA

48

7e"t Q 7e"t , !nd ,f ,f Hpt(escendente.Value /#en :or , 4 * /o 7 8 ) :or Q 4 , M 3 /o 7 8 3 ,f .>,? P .>Q? /#en / 4 .>,? .>,? 4 .>Q? .>Q? 4 / !nd ,f 7e"t Q 7e"t , !nd ,f Lst7umero.0lear :or , 4 * /o 7 8 3 Lst7umero.List>,? 4 .>,? 7e"t , !nd &ub 1ri ate &ub :orm=2nload>0ancel .s ,nteger? ,f MsgBo">@(esea terminar la aplicacinCA, = bRuestion M !nd !lse+ 0ancel 4 /rue + /"t7umero.&et:ocus !nd ,f !nd &ub 1ri ate &ub 0md&alir=0lic<>? 2nload Me Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 49 bNes7o, @1reguntaA? 4 bNes /#en

!nd &ub Aplicaci+$ N , !laborar una aplicacin que permita seleccionar un artculo de un cuadro combinado >0ombo?. .penas el usuario seleccione un artculo se debe mostrar el precio del mismo, el interWs es fi%o para esta ocasin. !l dise$o de la interfaz debe ser similar a la siguiente figura+

La

enta #a realizarse es a plazos, ello condiciona la

cuota mensual a pagarse. 0uando se #aga clic< sobre el botn 0uota mensual debe mostrarse un cuadro de dilogo con los datos propuestos+

50

(e manera similar al #acer clic< sobre el botn /otal nos debe mostrar la cantidad total a pagar.

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+ 3 marco 9 etiquetas 3 cuadro combinado ) ca%as de te"to 9 botones de opcin ) botones de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption (rame1 7ombre 0aption La el1 7ombre 0aption La el, Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 51 Lbl.rticulo .rtculo+ :ra1lazo 1lazo+ :rm0otizacion 98:i"ed (ialog 1edido de cotizaciones

7ombre 0aption La el7ombre 0aption Com o1 7ombre /e"t Te1t1 7ombre Loc<ed /e"t Te1t, 7ombre Loc<ed /e"t Optio$1 7ombre 0aption Value Optio$, 7ombre 0aption Value Optio$7ombre 0aption Value Comma$%1 7ombre 0aption Comma$%,

Lbl1recio 1recio 2&X

Lbl,nteres ,nterWs+

0bo.rticulo

/"t1recio /rue

/"t,nteres /rue

Hpt1lazo - meses /rue

Hpt1lazo 3) meses :alse

Hpt1lazo )F meses :alse

0md0uotaMensual &0uota mensual

52

7ombre 0aption 2na doble

0md/otal &/otal

ez establecidas las propiedades de la interfaz, #aga sobre el formulario e ingrese las siguientes

clic<

declaraciones en la seccin General del mdulo de formulario+ 1ri ate /ype .rticulo 7ombre .s &tring 6 9* 1recio .s (ouble !nd /ype (im .>F? .s .rticulo, 1lazo .s ,nteger 0onst ,nteres 4 *.3) Gecuerde que un dato declarado en la seccin General de un mdulo puede ser accedido por todos los procedimientos de dic#o mdulo. Luego, contin'e ingresando el cdigo que se muestra a continuacin+ 1ri ate &ub :orm=Load>? .>*?.7ombre 4 @Monitor &.M&27G &yncMaster 9A .>3?.7ombre 4 @,mpresora 5eJlett 1ac<ard (es<Qet K9*0A .>)?.7ombre 4 @,mpresora !pson &tylus 0olor LF*A .>9?.7ombre 4 @Microprocesador 1entium , )99 M5YA .>*?.1recio 4 3E* + .>3?.1recio 4 )LE .>)?.1recio 4 3FE + .>9?.1recio 4 D* (im , .s ,nteger :or , 4 3 /o F 0bo.rticulo..dd,tem .>, 8 3?.7ombre 7e"t , /"t,nteres 4 ,nteres + 1lazo 4 !nd &ub Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 53

1ri ate &ub 0bo.rticulo=0lic<>? (im , .s ,nteger , 4 0bo.rticulo.List,nde" /"t1recio 4 .>,?.1recio !nd &ub 1ri ate &ub Hpt1lazo=0lic<>,nde" .s ,nteger? &elect 0ase ,nde" 0ase *+ 1lazo 4 0ase 3+ 1lazo 4 3) 0ase )+ 1lazo 4 )F !nd &elect !nd &ub 1ri ate &ub 0md0uotaMensual=0lic<>? (im /otal .s (ouble, 0uotaMensual .s (ouble, , .s ,nteger , 4 0bo.rticulo.List,nde" /otal 4 .>,?.1recio 6 >3 M ,nteres? 0uotaMensual 4 /otal ; 1lazo MsgBo" @0uota Mensual 2&XA & &tr>0uotaMensual? !nd &ub 1ri ate &ub 0md/otal=0lic<>? (im /otal .s (ouble, , .s ,nteger , 4 0bo.rticulo.List,nde" /otal 4 .>,?.1recio 6 >3 M ,nteres? MsgBo" @/otal 2&XA & &tr>/otal? !nd &ub Aplicaci+$ N &e desea elaborar una aplicacin que permita controlar el proceso de matrcula en un curso de computacin. 1ara ello se

54

deben

recabar

los

siguientes

datos+

3?

0urso

en

que

se

matricula el alumno, )? :ec#a de matrcula, 9? .pellidos y nombres, F? &e"o, E? (ireccin, y -? (istrito de residencia.

1ara el desarrollo de esta aplicacin proceda a ubicar los siguientes controles en el formulario+ F marcos - etiquetas E ca%as de te"to 3 cuadro combinado ) controles de lista F botones de comando

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

55

!n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre Border&tyle 0aption (rame1 7ombre 0aption (rame, 7ombre 0aption (rame7ombre 0aption (rame. 7ombre 0aption La el1 7ombre 0aption La el, 7ombre 0aption La el7ombre 0aption La el. 7ombre 0aption Lbl&e"o &e"o+ Lbl.lumno .lumno+ Lbl:ec#aMat :ec#a de matrcula+ Lbl0urso 0urso+ :ra(istritos (istritos+ :ra0ursos 0ursos+ :raHpciones Hpciones+ :ra,ngreso ,ngreso de datos+ :rm:ic#aMatricula 98:i"ed (ialog :ic#a de matrcula

56

La el/ 7ombre 0aption La el0 7ombre 0aption Com o1 7ombre /e"t Li#t1 7ombre /e"t Li#t, 7ombre /e"t Te1t1 7ombre /e"t Te1t, 7ombre /e"t Te1t7ombre /e"t Te1t. 7ombre /e"t Te1t/ 7ombre /e"t /"t(istrito cc_peralta@hotmail.com 57 /"t(ireccion /"t.lumno /"t:ec#aMat /"t0urso Lst(istrito Lst0ursos 0bo&e"o Lbl(istrito (istrito+ Lbl(ireccin (ireccin+

Elaborado por Carlos Castillo Peralta

Comma$%1 7ombre 0aption Comma$%, 7ombre 0aption Comma$%7ombre 0aption Comma$%. 7ombre 0aption 1icture &tyle 2na ez 0md&alir &&alir 0+I:undVBIBitmapsI!"it.bmp 38Grap#ical establecidas las propiedades de la interfaz, 0mdLimpiar &Limpiar 0md0ancelar &0ancelar 0mdGuardar &Guardar

proceda a ingresar el cdigo que se indica a continuacin+ 1ri ate &ub :orm=Load>? Lst0ursos..dd,tem @Borland 0MM 7i el ,A Lst0ursos..dd,tem @Borland 0MM 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual Basic 7i el ,A Lst0ursos..dd,tem @Microsoft Visual Basic 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual :o"1ro 7i el ,A Lst0ursos..dd,tem @Microsoft Visual :o"1ro 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual 0MM 7i el ,A Lst0ursos..dd,tem @Microsoft Visual 0MM 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual QMM 7i el ,A Lst0ursos..dd,tem @Microsoft Visual QMM 7i el ,,A Lst0ursos..dd,tem @Microsoft &RL &er er 7i el ,A Lst0ursos..dd,tem @Microsoft &RL &er er 7i el ,,A

58

Lst0ursos..dd,tem @Microsoft 1oJer Builder 7i el ,A Lst0ursos..dd,tem @Microsoft 1oJer Builder 7i el ,,A Lst(istrito..dd,tem @0allaoA Lst(istrito..dd,tem @Bella istaA Lst(istrito..dd,tem @0armen de la LeguaA Lst(istrito..dd,tem @La 1erlaA Lst(istrito..dd,tem @La 1untaA Lst(istrito..dd,tem @VentanillaA Lst(istrito..dd,tem @0ercado de LimaA Lst(istrito..dd,tem @.ncnA Lst(istrito..dd,tem @.teA Lst(istrito..dd,tem @BarrancoA Lst(istrito..dd,tem @Bre$aA Lst(istrito..dd,tem @0arabaylloA Lst(istrito..dd,tem @0omasA Lst(istrito..dd,tem @0#aclacayoA Lst(istrito..dd,tem @0#orrillosA Lst(istrito..dd,tem @!l .gustinoA Lst(istrito..dd,tem @Qes's MaraA Lst(istrito..dd,tem @La MolinaA Lst(istrito..dd,tem @La VictoriaA Lst(istrito..dd,tem @LinceA Lst(istrito..dd,tem @Luriganc#oA Lst(istrito..dd,tem @LurnA Lst(istrito..dd,tem @Magdalena del MarA Lst(istrito..dd,tem @MirafloresA Lst(istrito..dd,tem @1ac#acamacA Lst(istrito..dd,tem @1ucusanaA Lst(istrito..dd,tem @1ueblo LibreA Lst(istrito..dd,tem @1uente 1iedraA 59

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

Lst(istrito..dd,tem @1unta 7egraA Lst(istrito..dd,tem @GimacA Lst(istrito..dd,tem @&an BartoloA Lst(istrito..dd,tem @&an ,sidroA Lst(istrito..dd,tem @,ndependenciaA Lst(istrito..dd,tem @&an Quan de MirafloresA Lst(istrito..dd,tem @&an LuisA Lst(istrito..dd,tem @&an Martn de 1orresA Lst(istrito..dd,tem @&an MiguelA Lst(istrito..dd,tem @&antiago de &urcoA Lst(istrito..dd,tem @Villa Mara del /riunfoA Lst(istrito..dd,tem @&an Quan de Luriganc#oA Lst(istrito..dd,tem @&anta Mara del MarA Lst(istrito..dd,tem @&anta GosaA Lst(istrito..dd,tem @Los Hli osA Lst(istrito..dd,tem @0ieneguillaA Lst(istrito..dd,tem @&an Bor%aA Lst(istrito..dd,tem @Villa el &al adorA Lst(istrito..dd,tem @&anta .nitaA 0bo&e"o..dd,tem @MasculinoA + 0bo&e"o..dd,tem @:emeninoA !nd &ub 1ri ate &ub :orm=2nload>0ancel .s ,nteger? ,f MsgBo">@B(esea terminar la aplicacinCA, = bRuestion M !nd !lse 0ancel 4 /rue 0all 0mdLimpiar=0lic< !nd ,f !nd &ub bNes7o, @1reguntaA? 4 bNes /#en

60

1ri ate &ub Lst0ursos=0lic<>? /"t0ursos 4 Lst0ursos !nd &ub 1ri ate &ub Lst(istrito=0lic<>? /"t(istrito 4 Lst(istrito !nd &ub 1ri ate &ub 0mdGuardar=0lic<>? Lst0ursos.!nabled 4 :alse Lst(istrito.!nabled 4 :alse /"t0ursos.Loc<ed 4 /rue /"t:ec#aMat.Loc<ed 4 /rue /"t.lumno.Loc<ed 4 /rue 0bo&e"o.Loc<ed 4 /rue /"t(ireccion.Loc<ed 4 /rue /"t(istrito.Loc<ed 4 /rue MsgBo" @.lumno matriculadoA, !nd &ub 1ri ate &ub 0mdLimpiar=0lic<>? Lst0ursos.!nabled 4 /rue Lst(istrito.!nabled 4 /rue /"t0ursos.Loc<ed 4 :alse /"t:ec#aMat.Loc<ed 4 :alse /"t.lumno.Loc<ed 4 :alse 0bo&e"o.Loc<ed 4 :alse /"t(ireccion.Loc<ed 4 :alse /"t(istrito.Loc<ed 4 :alse /"t0ursos 4 @A /"t:ec#aMat 4 @A Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 61 b,nformation, @Mensa%eA

/"t.lumno 4 @A 0bo&e"o 4 @A /"t(ireccion 4 @A /"t(istrito 4 @A /"t0ursos.&et:ocus !nd &ub 1ri ate &ub 0md0ancelar=0lic<>? ,f MsgBo">@B(esea modificar alg'n datoCA, = bRuestion M bNes7o, @Mensa%eA? 4 bNes /#en Lst0ursos.!nabled 4 /rue Lst(istrito.!nabled 4 /rue /"t0ursos.Loc<ed 4 :alse /"t:ec#aMat.Loc<ed 4 :alse /"t.lumno.Loc<ed 4 :alse 0bo&e"o.Loc<ed 4 :alse /"t(ireccion.Loc<ed 4 :alse /"t(istrito.Loc<ed 4 :alse !nd ,f !nd &ub 1ri ate &ub 0md&alir=0lic<>? 2nload Me !nd &ub

Aplicaci+$ N . (esarrollar una aplicacin que 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

62

>teora?, el nombre del %efe de prctica >laboratorio?, as como los #orarios de teora y de laboratorio. !l dise$o de la interfaz deber ser similar al siguiente+

Microsoft
GUA DE LABORATORIO N /

Visual Basic

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

63

O !eti"o# Luego de completar este laboratorio, el estudiante ser capaz de+ 0rear procedimientos y funciones definidos por el usuario. .$adir formularios creados anteriormente a un proyecto. 0ambiar el formulario de arranque de un proyecto. 2tilizar formularios M(,. Mane%ar diferentes mWtodos y propiedades de los formularios. 0rear y utilizar men's en una aplicacin. Co$#i%eracio$e# 1ara el desarrollo del presente laboratorio 2d. deber crear una carpeta C&'()$%*B'La /, para guardar sus traba%os correspondientes a este laboratorio. Aplicaci+$ N 1 !scriba una funcin que reciba como argumento una cadena de caracteres y la de uel a en forma in ersa, por e%emplo si se ingresa la cadena 0HG.YH7 deber retornar 7HY.GH0.

1ara el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario+

64

) etiquetas ) ca%as de te"to 9 botones de comando !n seguida proceda a establecer las propiedades seg'n se indica+ (orm1 7ombre 0aption Border&tyle La el1 7ombre .utosize 0aption La el, 7ombre .utosize 0aption Te1t1 7ombre /e"t Te1t, 7ombre Loc<ed /e"t Comma$%1 7ombre 0aption Comma$%, 7ombre 0aption 0mdLimpiar &Limpiar 65 0md.ceptar &.ceptar /"t,n ertida /rue /"t0adena Lbl,n ertida /rue 0adena in ertida+ Lbl0adena /rue ,ngresa una cadena+ :rm0ad,n ertida 0adena in ertida 98:i"ed (ialog

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

Comma$%7ombre 0aption 2na ez 0md&alir &&alir establecidas las propiedades de la interfaz,

proceda a ingresar el siguiente cdigo+ :unction 0ad,n ertida>0adena .s &tring? .s &tring (im ,n ertida>? .s &tring 6 3 (im , .s ,nteger (im Q .s ,nteger 7 4 Len>0adena? Ge(im ,n ertida>7? :or , 4 3 /o 7 ,n ertida>, 8 3? 4 Mid>0adena, ,, 3? 7e"t , :or Q 4 >7 8 3? /o * &tep 83 0ad,n ertida 4 0ad,n ertida & ,n ertida>Q? 7e"t Q !nd :unction 1ri ate &ub 0md,n ertir=0lic<>? /"t,n ertida 4 0ad,n ertida>/"t0adena? !nd &ub 1ri ate &ub 0mdLimpiar=0lic<>? /"t0adena 4 @A /"t,n ertida 4 @A /"t0adena.&et:ocus !nd &ub 1ri ate &ub 0md&alir=0lic<>?

66

!nd !nd &ub Aplicaci+$ N , &e desea elaborar una aplicacin que permita controlar el proceso de matrcula en un curso de computacin. 1ara ello se deben recabar los siguientes datos+ 3? 0urso en que se matricula el alumno, )? :ec#a de matrcula, 9? .pellidos y nombres, F? &e"o, E? (ireccin, y -? (istrito de residencia. !l dise$o de la interfaz debe ser similar a la figura mostrada+

1ara seleccionar un curso el usuario deber #acer clic< en el botn punteado que se encuentra al lado de la ca%a de te"to. !n seguida se presentar un men' de seleccin por realce en el cual se presenta la relacin de todos los cursos disponibles. !l curso quedar seleccionado al #acer clic< en el botn .ceptar.

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

67

!l mismo tipo de seleccin deber realizarse al momento de ingresar el nombre del distrito.

1ara el desarrollo de esta aplicacin necesitamos tres formularios y un mdulo. !n primer lugar proceda a a$adir un mdulo de cdigo al proyecto. &eleccione el Men' 1royecto y eli%a la opcin .gregar mdulo, se debe presentar un cuadro de dilogo similar a la siguiente figura+

68

(el cuadro de dilogo .gregar mdulo, en la fic#a 7ue o, #aga clic< en el botn .brir. Luego ingrese el siguiente cdigo en la seccin de (eclaraciones del mdulo que acabamos de a$adir+ 1ublic 0urso .s &tring 1ublic (istrito .s &tring !n seguida proceda a cambiar el nombre formulario

principal por :rm:ic#aMatricula. Luego debe a$adir los dems formularios necesarios para construir la aplicacin. 1ara tal fin, seleccione el men' 1royecto y eli%a la opcin .gregar formulario. (el cuadro de dilogo .gregar formulario, en la fic#a 7ue o, eli%a la opcin :ormulario y #aga clic< en el botn .brir. &e debe presentar un cuadro de dilogo similar a la siguiente figura+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

69

!n Gepita

ese el

instante

se

a$adir

un para

nue o a$adir

formulario el

al

proyecto. 0ambie el nombre del nue o formulario por :rm0urso. procedimiento anterior formulario :rm(istrito. . continuacin copie los pasos de la pg. EE a la pg. -) de la Gua de Laboratorio 7Z F >.plicacin 7Z 9? con los siguientes cambios+ !n la pg. EE, a$adir slo ) marcos. 7o a$adir ning'n control de lista. !n botones de comando. ez de F botones de comando, a$adir Luego, establecer las siguientes

propiedades para los dos nue os botones+ Comma$%/ 7ombre 0aption Comma$%0 0md0urso . . .

70

7ombre 0aption

0md(istrito . . .

!n la pg. EK, reemplazar el cdigo del e ento Load del formulario por el siguiente+ 1ri ate &ub :orm=Load>? 0bo&e"o..dd,tem VMasculinoV 0bo&e"o..dd,tem V:emeninoV !nd &ub !n la pg. -3, suprimir el cdigo asociado al e ento 0lic< de los controles de lista Lst0ursos y Lst(istrito. !n su lugar a$adir lo siguiente+ 1ri ate &ub 0md0urso=0lic<>? Load :rm0urso :rm0urso.&#oJ !nd &ub 1ri ate &ub 0md(istrito=0lic<>? Load :rm(istrito :rm(istrito.&#oJ !nd &ub . continuacin acti e el formulario :rm0urso, para ello #aga clic< sobre el mismo. !n seguida proceda a ubicar los siguientes controles en el formulario+ 3 control de lista 3 botones de comando Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 71 bModal /"t(istrito 4 (istrito bModal /"t0urso 4 0urso

Luego indica+ (orm,

proceda

establecer

las

propiedades

seg'n

se

7ombre Border&tyle 0aption Li#t1 7ombre /e"t Comma$%1 7ombre 0aption 2na

:rm0urso 98:i"ed (ialog 0ursos

Lst0ursos

0md.ceptar &.ceptar

ez establecidas las propiedades proceda a ingresar el

cdigo que se indica a continuacin+ 1ri ate &ub :orm=Load>? Lst0ursos..dd,tem @Borland 0MM 7i el ,A Lst0ursos..dd,tem @Borland 0MM 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual Basic 7i el ,A Lst0ursos..dd,tem @Microsoft Visual Basic 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual :o"1ro 7i el ,A Lst0ursos..dd,tem @Microsoft Visual :o"1ro 7i el ,,A Lst0ursos..dd,tem @Microsoft Visual 0MM 7i el ,A Lst0ursos..dd,tem @Microsoft Visual 0MM 7i el ,,A Lst0ursos..dd,tem @Microsoft &RL &er er 7i el ,A Lst0ursos..dd,tem @Microsoft &RL &er er 7i el ,,A Lst0ursos..dd,tem @Microsoft 1oJer Builder 7i el ,A Lst0ursos..dd,tem @Microsoft 1oJer Builder 7i el ,,A !nd &ub 1ri ate &ub 0md.ceptar=0lic<>?

72

0urso 4 Lst0ursos./e"t :rm0urso.5ide !nd &ub 1or 'ltimo, proceda 2d. a desarrollar el cdigo respecti o para el formulario :rm(istrito. Aplicaci+$ N !laborar una aplicacin que permita presentar los diferentes tipos de formularios de Visual Basic. 2tilice como contenedor principal un formulario M(,, tal como se muestra en la figura+

1ara el desarrollo de esta aplicacin necesitamos utilizar un formulario M(, >interfaz de m'ltiples documentos?. 1ara ello seleccione el Men' 1royecto y eli%a la opcin .gregar formulario M(,, se debe presentar un cuadro de dilogo similar a la siguiente figura+

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

73

(el cuadro de dilogo .gregar formulario M(,, en la fic#a 7ue o, #aga clic< en el botn .brir. !n seguida cambie el nombre del formulario M(, por M(,1rincipal. . continuacin proceda a a$adir los formularios para las diferentes opciones del men'. 0ambie los nombres de los formularios seg'n se indica+ (orm)lario :orm3 :orm) :orm9 :ormF :ormE :orm:ormL Nom re :rm7one :rm:i"ed&ingle :rm&izable :rm:i"ed(ialog :rm:i"ed/oolUindoJ :rm&izable/oolUindoJ :rm.cerca(e

74

Luego proceda a dise$ar el men' de opciones. 1ara ello #aga clic< derec#o sobre el formulario M(, y eli%a la opcin !ditor de men's. !stablezca las propiedades seg'n+ Captio$ &Men' 1rincipal &*87one &38:i"ed &ingle &)8&izable &98:i"ed (ialog &F8:i"ed /oolUindoJ &E8&izable /oolUindoJ 8 &.cerca del autor &&alir Name Mnu1rincipal Mnu7one Mnu:i"ed&ingle Mnu&izable Mnu:i"ed(ialog Mnu:i"ed/oolUindoJ Mnu&izable/oolUindoJ MnuLinea Mnu.cerca(e Mnu&alir 6hortC)t 7inguno 7inguno 7inguno 7inguno 7inguno 7inguno 7inguno 7inguno 7inguno 0trl M [

. continuacin #aga clic< en el botn .ceptar del !ditor de men's. Luego proceda a ingresar el siguiente cdigo para el formulario M(,+ 1ri ate &ub M(,:orm=2nload>0ancel .s ,nteger? ,f MsgBo">@B(esea terminar la aplicacinCA, = bRuestion M !nd !lse+ 0ancel 4 /rue !nd ,f !nd &ub 1ri ate &ub Mnu7one=0lic<>? Load :rm7one :rm7one.&#oJ !nd &ub 1ri ate &ub Mnu:i"ed&ingle=0lic<>? Load :rm:i"ed&ingle :rm:i"ed&ingle.&#oJ Elaborado por Carlos Castillo Peralta cc_peralta@hotmail.com 75 bNes7o, @Mensa%eA? 4 bNes /#en

!nd &ub 1ri ate &ub Mnu&izable=0lic<>? Load :rm&izable :rm&izable.&#oJ !nd &ub 1ri ate &ub Mnu:i"ed(ialog=0lic<>? Load :rm:i"ed(ialog :rm:i"ed(ialog.&#oJ !nd &ub 1ri ate &ub Mnu:i"ed/oolUindoJ=0lic<>? Load :rm:i"ed/oolUindoJ :rm:i"ed/oolUindoJ.&#oJ !nd &ub 1ri ate &ub Mnu&izable/oolUindoJ=0lic<>? Load :rm&izable/oolUindoJ :rm&izable/oolUindoJ.&#oJ !nd &ub 1ri ate &ub Mnu.cerca(e=0lic<>? Load :rm.cerca(e :rm.cerca(e.&#oJ !nd &ub 1ri ate &ub Mnu&alir=0lic<>? 2nload Me !nd &ub

76

. continuacin proceda a acti ar el formulario :rm7one y ubique un botn de comandos sobre el mismo. !n seguida establezca las propiedades seg'n se indica a continuacin+ (orm1 7ombre Border&tyle 0aption M(,0#ild Comma$%1 7ombre 0aption 2na 0mdVol er &Vol er :rm7one *87one 7one /rue

ez establecidas las propiedades, proceda a ingresar

el cdigo que se muestra a continuacin+ 1ri ate &ub 0mdVol er=0lic<>? 2nload Me !nd &ub Gepita el procedimiento anterior para los dems tipos de formularios. Aplicaci+$ N . !laborar una aplicacin que acepte como entrada la reser a de agua de un depsito y los litros que se consumen a la semana. 2tilizando una funcin definida por el usuario determinar como resultado las cantidades de agua que quedan al final de cada semana. !l proceso finalizar cuando no quede agua suficiente para una semana. 2tilizar otro formulario para mostrar la salida. (IN 4ARTE I

Elaborado por Carlos Castillo Peralta

cc_peralta@hotmail.com

77