Está en la página 1de 202

AGINA SSINGkLSAk AL VISUAL 8ASICNL1

Al lngresar por prlmera vez al vlsual baslcneL observara la slgulenLe panLalla



Ln esLa panLalla se muesLra prlnclpalmenLe la pglna de lnlclo con proyecLos reclenLes y las
opclones para abrlr o crear un nuevo proyecLo 1amblen se muesLra en cuadro de herramlenLas y
el explorador de soluclones pero vaclos porque no hay nlngun proyecLo acLlvo
ara vlsuallzas Lodos los componenLes de vlsual 8aslcneL debe crear una apllcacln
CkLAk UNA ALICACICN
ara crear una apllcacln puede segulr cualqulera de los slgulenLes pasos
Lleglr la opcln Archlvo/nuevo royecLo


Pacer cllc en el boLn nuevo royecLo que se encuenLra en la barra LsLndar



Pacer cllc en el proyecLo de la opcln Crear que se encuenLra en la
pglna de lnlclo



Ln cualqulera de los pasos
anLerlores se vlsuallza la
slgulenLe venLana







LsLa venLana conLlene las planLlllas lnsLaladas de vlsual SLudloneL en forma predeLermlnada se
ellge Apllcacln para Wlndows


Ln la ca[a nombre escrlba el nombre de su nueva apllcacln y preslone LnLer o haga cllc en el
boLn AcepLar

LLLMLN1CS DLL VISUAL 8ASICNL1
Al crear una nueva apllcacln se vlsuallza la slgulenLe venLana que conslsLe en el luL del vlsual
8aslcneL en el e[emplo se ha creado una apllcacln llamada e[emplo1

Como puede observar el vlsual 8aslc 2008 express edlLlon conLlene Lodos los elemenLos de
verslones anLerlores como se muesLra a conLlnuacln
8AkkA DL 1I1ULC
ConLlene el nombre del proyecLo y su esLado Cuando esLamos en esLado de dlseno es declr
dlbu[ando los conLroles o escrlblendo las lnsLrucclones la barra solo nuesLra el nombre del
proyecLo

Cuando se e[ecuLa la apllcacln se muesLra la palabra e[ecuLando en la barra de LlLulo

uuranLe esLe esLado la apllcacln solo e[ecuLara las lnsLrucclones lndlcadas y no se podr
modlflcarlas nl alLerar el dlseno de la apllcacln
uuranLe la e[ecucln de una apllcacln esLa se puede lnLerrumplr para modlflcar agregar una
nueva lnsLruccln en esLe esLado se vlsuallza la palabra depurando

Los slgulenLes boLones se encuenLran en la barra esLndar permlLen lnlclar lnLerrumplr deLener o
depurar una apllcacln

Como en verslones anLerlores de vlsual 8aslc se puede e[ecuLar una apllcacln
pulsando la Lecla l3
LA 8AkkA DL MLNU
La barra de menu conLlene Lodas las opclones que permlLen uLlllzar el vlsual 8aslc 2008 Lxpress

Cada una de esLas opclones conLlene sub opclones las cuales se pueden Lamblen eleglr o acLlvar
pulsando las Leclas que las acompanan e[emplo CLrl + C para abrlr un proyecLo o haclendo cllc en
su graflco represenLaLlvo que se encuenLra en la barra esLndar


La barra esLndar conLlene los boLones que permlLen acceder de manera lnmedlaLa a las opclones
ms comunes del vlsual 8aslc Al pasar el punLero del mouse por cada uno de los boLones se
vlsuallza un mensa[e lndlcando la funcln de cada uno de ellos
Crea un nuevo proyecLo
Abre un proyecLo exlsLenLe
ermlLe buscar y/o reemplazar un LexLo

Al hacer cllc en esLe boLn se vlsuallza la slgulenLe
venLana





Ln la ca[a buscar escrlba el LexLo que desea buscar y en buscar en lndlque donde se debe buscar
el LexLo Sl Lamblen desea reemplazar un LexLo haga cllc en reemplazo rpldo

LsLe boLn permlLe marcar como comenLarlo la llnea de lnsLruccln acLual o el bloque de
llneas selecclonadas


LsLe boLn permlLe qulLar la marca de comenLarlo a la llnea de lnsLruccln acLual o el
bloque de llneas selecclonadas



Ll ulLlmo boLn de la barra esLndar permlLe agregar o
qulLar boLones




Al hacer cllc en esLndar se vlsuallza la venLana con los boLones usLed puede acLlvar o desacLlvar
su casllla para vlsuallzarlos o no

LL CUADkC DL nLkkAMILN1AS
Como su nombre lo lndlca esLe cuadro conLlene Lodas las herramlenLas que se neceslLan para
desarrollar las apllcaclones

Ala pasar el punLero del mouse por esLe cuadro se vlsuallzan Lodas las PerramlenLas

Algunas PerramlenLas del vlsual 8aslc 2003 Lxpress son slmllares a las de verslones anLerlores de
vlsual 8aslc









Sl desea que el cuadro de herramlenLas esLe permanenLe en su panLalla debe de hacer cllc en el
boLn CculLar AuLomLlcamenLe

Ll lormularlo

Ll lormularlo se uLlllza para crear la lnLerfaz del usuarlo es declr la venLana donde se reallzar
comunlcacln enLre el usuarlo y la apllcacln

Aqul se dlbu[an las herramlenLas o conLroles del cuadro de herramlenLas se le aslgnan
propledades y se escrlben las lnsLrucclones necesarlas


ara dlbu[ar un conLrol que se encuenLra en el cuadro de herramlenLas se puede hacer doble cllc
sobre el conLrol o arrasLrarlo desde el cuadro de herramlenLas hacla el formularlo





La venLana de ropledades

LsLa venLana como su nombre lo lndlca conLlene Lodas las propledades o caracLerlsLlcas que se
les pueden aslgnar a los conLroles que se dlbu[an el formularlo










Como en casl Lodas las venLanas en la barra de LlLuLlo se vlsulalzan los boLones que permlLen

Ind|car pos|c|n de |a ventana en |a panta||a
Ind|car s| |a ventana se ocu|ta de forma automt|ca
Cerrar |a ventana

Despus de |a barra de t|tu|o |a venta de prop|edades muestra e| nombre y t|po de contro| a|
cua| se |e est as|gnando |as prop|edades
Ln e| s|gu|ente e[emp|o |nd|ca que se est as|gnando prop|edades a| formu|ar|o ||amado Iorm1



Ln e| s|gu|ente e[emp|o |nd|ca que se est as|gnando prop|edades a| contro| ||amado 8utton1 y
es un botn de comandos




Ln e| s|gu|ente e[emp|o |nd|ca que se est as|gnando prop|edades a| contro| ||amado 1xtNombre
y es una ca[a de textos



Lsta secc|n de |a ventana de prop|edades cont|ene una f|echa donde usted puede se|ecc|onar
otro contro| que ah d|bu[ado en su formu|ar|o para as|gnar|e prop|edades







Ln |a parte |nfer|or de| nombre de| contro| se muestran |os botones que perm|ten |o s|gu|ente

Mostrar |as prop|edades o eventos ordenadas por su categor|a
Mostrar |as prop|edades o eventos ordenadas a|fabt|camente por su nombre
Ver so|o |as prop|edades de| ob[eto se|ecc|onado
Ver so|o |os eventos de| ob[eto se|ecc|onado

Crdenacln por CaLegorla Crdenacln por nombre










Ln la slgulenLe venLana se muesLran los evenLos del conLrol
8uLLon1 ordenados alfabeLlcamenLe









Cuando se t|ene |a ||sta de |os eventos de un contro| se puede hacer dob|e c||c en su nombre
para abr|r |a ventana de cd|go



ara regresar a| formu|ar|o puede pu|sar |as tec|as Sh|ft + I7 o hacer c||c en |a ho[a Iorm1vb
d|seo* que se encuentra en |a parte super|or








L| s|gu|ente e[emp|o muestra e| exp|orador de so|uc|ones con una c|ase tres formu|ar|os un
modu|o con contro| de usuar|o








L| exp|orador de so|uc|ones muestra |os s|gu|entes
botones



Lstos botones perm|ten

Mostrar |as prop|edades de| arch|vo se|ecc|onado
Mostrar todos |os arch|vos de| proyecto
Actua||zar e| exp|orador de so|uc|ones
Ingresar a |a ventana de cd|go e| ob[eto se|ecc|onado
Ver |a ventana de d|seo


rop|edad de| Arch|vo rop|edad de royecto










venLana
ue
Cdlgo


Ventana De D|seo







Como en vers|ones anter|ores de V|sua| 8as|c tamb|n se puede |ngresar a |a ventana de cd|go
de un ob[eto pu|sando |a tec|a I7 y para regresar a |a ventana de d|seo Sh|ft + I7







CCNIIGUkAk LL VISUAL 8ASIC NL1

S| desea conf|gurar e| V|sua| 8as|c Net como por e[emp|o camb|ar e| t|po tamao o co|or de |a
|etra des |as |nstrucc|ones que escr|be o e| co|or de| texto de cada comentar|o etc debe e|eg|r
|a opc|n nerram|entas]Cpc|ones Se v|sua||za una ventana con |as secc|ones

Ln |a pr|mera venta debe de se|ecc|onar e| e|emento de V|sua| 8as|c que desea conf|gurar

Ln |a sequndo ventono se muestron /os dotos que puede conf|gurar de| e|emento se|ecc|onado

La s|gu|ente secc|n se muestra cuando e||ge e| e|emento Lntorno]Genera| donde por e[emp|o
puede |nd|car que se muestre o no |a barra de estado











La barra de estado |nd|ca s| e| V|sua| 8as|c Net esta L|sto para traba[ar o esa rea||zando a|gn
proceso e| numero de f||a y co|umna donde se encuentra e| cursor dentro de un programa en |a
ventana de cd|go y s| e| tec|ado est en e| modo Insert
S| desea mod|f|car e| t|po de |etra y |os co|ores que ut|||za e| V|sua| 8as|c Net debe e|eg|r de |a
pr|mera secc|n |a opc|n Lntorno]Iuentes
y co|ores Se v|sua||za |a s|gu|ente secc|n









ara camb|ar e| t|po y e| tamao de |etra que se ut|||zara para |as |nstrucc|ones que escr|ba
se|ecc|one 1exto
s|n formato de |a
||sta de
e|ementos y
|uego se|ecc|one
Iuente y 1amao



ara as|gnar co|ores ut|||ce r|mer |ano o Iondo





Ln e| s|gu|ente e[emp|o se ha se|ecc|onado de |a ||sta e|ementos |a opc|n comentar|o para
conf|gurar |a |etra de cada comentar|o que hagamos de un programa



Ln |a parte |nfer|or de |a secc|n se muestra un e[emp|o de| t|po tamao o co|or de |a |etra que
usted as|gn



S| desea restaurar |os va|ores predeterm|nado de| V|sua| 8as|c Net haga c||c en e| botn Usar
redeterm|nados


ara guardar |os camb|os haga c||c en e| botn Aceptar

Ln |a opc|n royectos y So|uc|ones]Genera| puede |nd|car |a carpeta donde se grabaran en
forma predeterm|nada |os proyectos que desarro||e as| como |as p|ant|||as que use



A| e|eg|r esta opc|n se v|sua||za |a s|gu|ente secc|n







uede hacer c||c en e| botn 8uscar () de cada una de |as ca[as para |nd|car |a carpeta
predeterm|nada Cuando grabe un proyecto se v|sua||zar |a ventana con |a carpeta que ha
conf|gurado

La opc|n royectos y So|uc|ones]Va|ores predeterm|nados de V|sua| 8as|c Net perm|te
conf|gurar |os va|ores Cn u
Cff para




Cpt|on Lxp||c|t

erm|te |nd|car s| es ob||gator|o o no dec|arar as var|ab|es que ut|||zamos dentro de un
programa L| va|or Cn |nd|ca que es ob||gator|o dec|arar |as var|ab|es Cuando e| V|sua| 8as|c Net
esta conf|gurado para que se dec|aren |as var|ab|es estas se v|sua||zan subrayadas cuando no |as
dec|aramos




Sl pasamos el punLero del mouse por la varlable se muesLra un LexLo expllcaLlvo

Al e[ecuLar el
proyecLo Lamblen se
mosLrara un mensa[e
de error



CpLlon SLrlcL

ermlLe conflgurar el vlsual 8aslc neL para que conLrole la conversacln de daLos Cuando esL en
Cn no permlLe conversaclones donde se plerdan daLos or e[emplo en las slgulenLes
lnsLrucclones ha declarado la varlable n para almacenar valores enLeros pero se le esL aslgnando
un valor declmal por lo que se muesLra subrayada lndlcando error



Al pasar el mouse por el valor subrayado se muesLra el LexLo expllcaLlvo




!unLo al LexLo expllcaLlvo se muesLra un lcono de admlracln y al pulsar las Leclas ShlfL + AlL l10 se
muesLra la solucln al error comeLldo




CpLlon Compare

ermlLe conflgurar al vlsual 8aslc neL para el Llpo de comparacln de cadenas de caracLeres Ll
Llpo de comparacln puede ser 8lnary o 1exL
Ll Llpo de comparacln 8lnary compara cada carcLer por su valor blnarlo que lo represenLa La
caracLerlsLlca prlnclpal de esLe Llpo de comparacln es que las leLras mayusculas con dlferenLes a
las mlnusculas
or e[emplo las slgulenLes lnsLrucclones muesLran el mensa[e no son lguales sl se ah conflgurado
Comparacln 8lnary
lf AMC8" amor" 1hen
Msg8ox(Sl son lguales" Msg8oxSLylelnformaLlon "Comparacln")
Llse
Msg8ox(no son lguales" Msg8oxSLylelnformaLlon" Comparacln")

Ll Llpo de comparacln 1exL compara carcLer por carcLer


CaracLerlsLlca prlnclpal de esLe Llpo de comparacln es que las leLras mayusculas son lguales a las
mlnusculas

Las lnsLrucclones muesLran el mensa[e S son lguales sl se ha conflgurado el vlsual 8aslc neL para
comparacln de 1exL




La opcln LdlLor de LexLo 8aslc/Cpclones especlflcas de v8 neL permlLe conflgurar el
comporLamlenLo del edlLor cuando escrlblmos las lnsLrucclones



or e[emplo cada ves que forma la condlcln en una lnsLruccln lf y preslona la Lecla LnLer
auLomLlcamenLe se escrlbe la lnsLruccln Lnd lf Lo mlsmo sucede con la lnsLruccln lor nexL y
slmllares
lf n 10 1hen lor a 1 Lo 10
Lnd lf nexL
La opcln edlLor de LexLos 8aslc/LdlLor permlLe conflgurar la sangrla e lnLeraccln es declr las
llneas de lnsLrucclones que escrlblmos por e[emplo podemos acLlvar la casllla para que se
enumere cada llnea






La opcln ulsenador de Wlndows lorms/ersonallzacln de
lu permlLe conflgurar los conLroles que esLn asoclados a
cada uno de los Llpos de daLos de vlsual 8aslc neL




Ln el slgulenLe e[emplo se muesLran los conLroles cuyo conLenldo puede devolver un daLo Llpo
enLero


La opcln dlsenador de Wlndows lorms/Ceneral permlLe conflgurar el formularlo or e[emplo
puede aslgnar el valor Lrue a la opcln ShowCrld para que en los formularlos se muesLren con
llneas en el modo de dlseno






GkA8Ak UN kCLC1C
La forma de grabar un proyecLo depende de cmo esL conflgurado el vlsual 8aslc neL
LsLe Llpo de conflguracln se reallza lngresando a la opcln PerramlenLas/Cpclones del menu
prlnclpal y luego lngresando a royecLos y soluclones/Ceneral


Ln la venLana que se vlsuallza exlsLe
una casllla llamada guardar nuevo
proyecLo al crearlo







Sl la casllla lndlca esL desacLlvada el proyecLo se grabara slo despues de crearlo


Ln esLe caso crear un nuevo proyecLo el vlsual 8aslc neL slo le pedlr el nombre del proyecLo

Ll nombre predeLermlnado de una apllcacln es WlndowsApllcaLlon reemplcelo por el nombre
que usLed le desea aslgnar a su nueva apllcacln y luego pulse la Lecla LnLer o haga cllc en el 8oLn
AcepLar
ue esLa manera se crea y se vlsuallza una nueva apllcacln pero no se grabar Sl desea grabar la
apllcacln despues de crearla debe hacer cllc en la opcln o en el boLn Crabar 1odo o pulsar las
Leclas CrLl + ShlfL + S sl slo desea grabar el formularlo puede hacer cllc en la opcln o en el boLn
Crabar lormvb o pulsar las Leclas CrLl + S
8oLn Crabar 1odo 8oLn Crabar lormvb


Con cualqulera de los pasos anLerlores se vlsuallza la slgulenLe venLana
Ln esLa venLana puede hacer cllc en el boLn Lxamlnar para buscar y/o selecclonar una nueva
carpeLa donde grabar el proyecLo
Ln la slgulenLe venLana de e[emplo se ha selecclonado la carpeLa e[emplos en la unldad C y el
nombre del proyecLo es 1raba[o



vlsual 8aslc neL crea en forma auLomLlca una carpeLa con el nombre del proyecLo denLro del
cual graba Lodos los archlvos de ese proyecLo Ln la venLana de e[emplo se observa que se ha
creada la carpeLa 1raba[o denLro de CL[emplos


Ll conLenldo de la carpeLa que se crea con el nombre del proyecLo depende de acLlvar o no la
casllla Crear dlrecLorlo para solucln



Sl la casllla esLa acLlvada se crear denLro de esa carpeLa un
archlvo y una capeLa con el mlsmo nombre Ll archlvo es la
solucln y que permlLe abrlr de manera dlrecLa el proyecLo
La carpeLa conLlene Lodos los archlvos del proyecLo


ConLenldo de la carpeLa









Sl la casllla no esLa acLlva se grabara denLro de la carpeLa creada con el nombre del proyecLo los
archlvos de esa apllcacln [unLo con la solucln es declr no se crea una carpeLa adlclona












Algunos archlvos del proyecLo se encuenLran en las carpeLas 8ln Cb[ y My royecL
La carpeLa que se
vlsuallza en formal
predeLermlnada al
momenLo de grabar
un proyecLo
(ublcacln) como se
muesLra en la
slgulenLe venLana


uepende de la venLana de conflguracln en la ca[a ublcacln de royecLos de vlsual SLudlo


Sl en la venLana de conflguracln anLerlor acLlvamos la casllla Cuardar nuevos proyecLos al
crearlos







Ll proyecLo se grabara al momenLo de crearlo La slgulenLe venLana vlsuallza cuando el vlsual 8aslc
neL esL conflgurado para grabar proyecLos al momenLo de crearlo


Los conLroles de apllcaclones en esLa nueva venLana son los slgulenLes y los pasos para grabar el
proyecLo son los mlsmos
A8kIk UN kCLC1C
ara abrlr un proyecLo lo puede hacer desde el explorador de Wlndows haclendo doble cllc en el
nombre de la solucln o del proyecLo que se crea al grabarlo







nombre de la Solucln nombre del royecLo

Sl se encuenLra denLro del vlsual 8aslc neL y desea abrlr un proyecLo puede hacer cllc en
el boLn Abrlr Archlvo o en la opcln Archlvo/Abrlr Archlvo Se vlsuallza la slgulenLe
venLana donde debe selecclonar la carpeLa donde grabo el proyecLo
8oLn Abrlr Archlvo







Ln esLa venLana haga doble cllc en el nombre de la solucln o selecclnelo y luego haga cllc en el
boLn Abrlr Al mosLrarse el proyecLo en la panLalla haga doble cllc en el nombre del formularlo
que desea vlsuallzar en el explorador de soluclones
nombre de la Solucln




una forma mas dlrecLa de abrlr un proyecLo es haclendo cllc en la opcln Archlvo/Abrlr royecLo
Ln esLa venLana despues de selecclonar la carpeLa donde grab el proyecLo vlsuallza el nombre
del proyecLo y de la solucln creada ara abrlr el proyecLo haga doble cllc en cualqulera de los
archlvos o selecclone cualqulera de ellos y haga cllc en el boLn Abrlr


nombre del royecLo nombre de la Solucln



Como en caso anLerlor al mosLrarse el proyecLo en la panLalla haga cllc del explorador de
soluclones en el nombre del formularlo que desea vlsuallzar





CCN1kCLLS 8ASICCS DLL VISUAL 8ASIC NL1






Conten|do
Ln esLe caplLulo usLed aprender a desarrollar sus prlmeras apllcaclones en vlsual 8aslc neL y a
uLlllzar sus conLroles 8slcos
O / lormu/orio
O / contro/ 8utton
O / contro/ Lobe/
O / contro/ 1ex8ox
O / contro/ 1oo/1ip
O / contro/ contextmenustrip


LL ICkMUALkIC

Ll formularlo es el ob[eLo prlnclpal de cada apllcacln porque aqul se consLruye la lnLerfaz del
usuarlo es declr la comunlcacln del usuarlo con la apllcacln que se desarrolla
Ll desarrollo de una apllcacln conslsLe en agregar los formularlos necesarlos y aslgnarles sus
propledades luego dlbu[ar los conLroles que cada uno de ellos neceslLan y aslgnarles Lamblen sus
propledades y flnalmenLe escrlblr las lnsLrucclones requerldas por la apllcacln
Cuando se crea una apllcacln en forma predeLermlnada se crea un formularlo llamado lorm1
ara agregar nuevos formularlos a su apllcacln puede eleglr la opcln royecLo/Agregar Wlndows
lorms




CLra forma de agregar formularlos a una apllcacln es haclendo cllc en el nombre del proyecLo del
explorador de soluclones y ellglendo la opcln
Agregar/Wlndows lorms



Ll boLn Agregar elemenLo de la barra LsLndar
Lamblen Llene la opcln Agregar Wlndows lorms






Ln la venLana que se vlsuallza selecclone Wlndows lorms y haga cllc en el boLn Agregar


Sl desea anLes de hacer cllc en el boLn Agregar puede aslgnarle un nombre dlferenLe al
predeLermlnado del nuevo formularlo Ln el slgulenLe e[emplo se esL agregando un nuevo
formularlo con el nombre lrmersonal



Cuando se agrega un nuevo formularlo al proyecLo su nombre se vlsuallza en el explorador de
soluclones



ara ellmlnar un formularlo haga cllc derecho en su nombre en el explorador
de soluclones y del menu conLexLual que se vlsuallza ell[a la opcln Lllmlnar
uel mensa[e que se vlsuallza haga cllc en el boLn AcepLar para conflrmar la
ellmlnacln
Ln la slgulenLe venLana de e[emplo el proyecLo esL compuesLo por cuaLro
formularlos




Como en verslones anLerlores al e[ecuLar el proyecLo se vlsuallza el prlmer formularlo ara
lndlcar el formularlo lnlclal puede eleglr la opcln PerramlenLas/ropledades o haclendo cllc
derecho en el nombre de la apllcacln de explorador de soluclones y ellglendo ropledades

La venLana que se vlsuallza Llene dos secclones La prlmera seccln conLlene un
con[unLo de opclones de las cuales debe eleglr Apllcacln
Cuando se ellge la opcln Apllcacln se vlsuallza denLro de la segunda seccln lo
slgulenLe




Ln esLa seccln debe eleglr en lormularlo de lnlclo el formularlo que desea e[ecuLar prlmero

r|nc|pa|es prop|edades de |os formu|ar|os
Name
Se uLlllza para aslgnarle un nombre al formularlo LsLe nombre Lamblen se le puede aslgnar al
momenLo de agregar el formularlo


Contro|8ox
LsLa propledad permlLe mosLrar o no los boLones de conLrol del formularlo





Cursor
Se uLlllza para selecclonar el Llpo del punLero del mouse cuando se pase por el formularlo
L[emplo



Iorm8orderSty|e
LsLa propledad permlLe conflgurar el esLllo del borde del formularlo uel esLllo que se ell[a
depende los boLones que se vlsuallce y su comporLamlenLo cuando se e[ecuLa L[emplos
llxedSlngle
(normal)
none
llxed1oolWlnd
ow


Max|m|ze8ox Se uLlllza para lndlcar sl el formularlo debe mosLrar el boLn maxlmlzar
Max|mumS|ze Se uLlllza para lndlcar el Lamano mxlmo que puede Lener el formularlo
M|n|m|ze8ox Se uLlllza para lndlcar sl el formularlo debe mosLrar el boLn mlnlmlzar
M|n|mumS|ze Se uLlllza para lndlcar el Lamano mlnlmo que puede Lener el formularlo
Startos|t|on Se uLlllza para lndlcar la poslcln del formularlo cuando se e[ecuLe
1ext Se uLlllza para escrlblr el LlLulo del formularlo
W|ndowState Se uLlllza para lndlcar el Lamano lnlclar del formularlo cuando se e[ecuLe

D|bu[ar Contro|es en e| Iormu|ar|os
Los conLroles se encuenLran en el cuadro de herramlenLas agrupados en flchas usLed puede
expandlr la flcha segun el Llpo de conLrol que neceslLa Sl desea vlsuallzar Lodos los conLroles
expanda la flcha
1odos |os formu|ar|os W|ndows Iorms








LxlsLen dos formas de dlbu[ar conLroles en un formularlo
nociendo dob/e c/ic en e/ contro/
n este cosi /os contro/es que vo dibujondo se von ubicondo en /o porte superior
itquierdo de/ formu/orio
2 4rrostrondo e/ contro/ desde e/ cuodro de herromientos o/ formu/orio
uespues de dlbu[ar los conLroles debe aslgnarles sus propledades






LL CCN1kCL 8U11CN
LsLe conLrol como en verslones anLerlores del vlsual 8slcneL permlLe escrlblr lnsLrucclones las
cuales se e[ecuLan normalmenLe cuando se hace cllc en dlcho conLrol
Algunas de sus propledades han camblado y se han agregado nuevas
Name
LsLa propledad permlLe aslgnarle un nombre al conLrol Se recomlenda que su nombre emplece
con las leLras 8Ln
Image
LsLa propledad permlLe aslgnarle un graflco al boLn

ImageA||gn
LsLa propledad permlLe llnear el graflco denLro del conLrol Ln vlsual 8aslcneL exlsLen 09 formas
de allnear como se muesLra a conLlnuacln



1ext
LsLa propledad permlLe aslgnarle un LlLulo al boLn Ln esLa propledad se puede uLlllzar Lamblen el
slmbolo para poder e[ecuLar las lnsLrucclones pulsado la Lecla AlL y la leLra subrayada del LlLulo
del boLn
1extA||gn
LsLa propledad permlLe allnear el LlLulo del boLn
Ap||cac|n Desarro||ada N II01







LsLa apllcacln permlLe llamar a 03 formularlos desde un formularlo prlnclpal Ll formularlo
prlnclpal se llama lrmrlnclpal y los oLros lrmalses lrmLmpleados y lrmroducLos L[emplo





Ln esLa apllcacln de e[emplo se uLlllza el meLodo Show para mosLrar formularlos
Ll formularlo prlnclpal esLa compuesLo por 04 boLones de comandos llamados 8Lnalses
8LnLmpleados 8LnroducLos y 8Lnllnallzar



Cada uno de los boLones Llene asoclado un graflco uLlllzando su propledad lmage Los Lres
prlmeros boLones Llene el graflco allneado a la mlLad y lado lzqulerdo (MlddleLefL) Ll LexLo de
cada uno de ellos esLn allneados a la mlLad y cenLro (MlddleCenLer)
Ll boLn 8Lnllnallzar Llene el graflco allneado a la mlLad y cenLro (MldlleCenLer) y su LexLo en el
cenLro de la parLe lnferlor (8uLLomCenLer)
Ll resLo de formularlos solo Llene un boLn llamado 8LnCerrar con un graflco a la mlLad y cenLro
(MlddleCenLer) y su LexLo en el cenLro de la parLe lnferlor (8oLLomCenLer)




lnsLrucclones de los boLones del formularlo lrmrlnclpal



uenLro de cada uno de los boLones 8LnCerrar del resLo de formularlos se uLlllza el meLodo Close
C|ose()


ara llamar y uLlllzar un formularlo Lamblen se le puede crear una referencla or e[emplo para
llamar al formularlo lrmLmpleados se pueden escrlblr las slgulenLes lnsLrucclones
D|m I as New IrmLmp|eados
IShow()
Ll meLodo Show muesLra el formularlo en modo no Modal esLo qulere declr que despues de
llamar a un formularlo prlnclpal sln cerrar el formularlo secundarlo
or e[emplo sl se Llene los dos formularlos y haces cllc en cualquler parLe del formularlo prlnclpal
esLe queda acLlvado y el formularlo lrmLmpleados mlnlmlzado en la barra de Lareas







8arra de 1areas



Sl queremos llamar a los formularlos en modo Modal es declr que solo se acLlve el formularlo
prlnclpal cuando cerramos el formularlo secundarlo debemos uLlllzar el meLodo Showulalog
Las slgulenLes lnsLrucclones muesLra el formularlo lrmroducLos en modo Modal



ue esLa manera cuando se haga cllc en cualquler parLe del formularlo prlnclpal no se acLlvar hasLa
cerrar el formularlo lrmroducLos

A cada uno de los boLones podemos aslgnarle un LexLo expllcaLlvo para que se vlsuallce cuando se
pase el punLero del mouse por el conLrol
ara esLo se debe uLlllzar el conLrol 1ool1lp

LL CCN1kCL 1CCL1I
Ll conLrol 1ool1lp permlLe esLablecer un LexLo expllcaLlvo para oLros conLroles cuando el usuarlo
pase el punLero del mouse por el conLrol
Ln el slgulenLe e[emplo se ha aslgnado un LexLo expllcaLlvo a los boLones 8Lnalses y 8Lnllnallzar


ara poder aslgnarle a los conLroles el LexLo expllcaLlvo debe dlbu[ar en su formularlo el conLrol
1ool1lp
Cuando dlbu[a el conLrol 1ool1lp Se ublca en la parLe lnferlor del formularlo



uespues de dlbu[ar el conLrol 1ool1lp en su formularlo se agrega auLomLlcamenLe la propledad
1ool1lp en 1oo1lp1 a los conLroles que conLlene el formularlo
La slgulenLe venLana de propledades perLenece al boLn 8Lnalses despues de haber dlbu[ado el
conLrol 1ool1lp en su formularlo


AnLes de dlbu[ar el conLrol 1oo1lp no exlsLla la propledad 1ool1lp en 1ool1lp1



AdlclonalmenLe el LexLo expllcaLlvo aslgnado a cada boLn podemos hacer que el color de fondo
de cada uno de ellos camble de color cuando el usuarlo pase el punLero del mouse sobre cualquler
boLn




Ln los slgulenLes e[emplos se muesLra el camblo del color de cada boLn en el formularlo prlnclpal


ara lograr la acLlvacln de colores uLlllzamos la propledad 8ackColor de cada boLn y el evenLo
MouseMove del formularlo y de los boLones

lnsLrucclones del evenLo MouseMove de cada boLn y del formularlo


LL CCN1kCL LA8LL
Labe| permlLe mosLrar mensa[e o resulLados de algun clculo numerlco en el formularlo
Sus prlnclpales propledades son
Name LsLa propledad permlLe aslgnarle un nombre al conLrol Se recomlenda que su nombre
emplece con las leLras Lbl
AutoS|ze ermlLe lndlcar sl el Lamano del conLrol debe a[usLarse en forma auLomLlca a la
calldad y Lamano de las leLras que conLlene Ln forma predeLermlnada Llene el aslgnado el valor
1rue ara poder camblarle su Lamano en Llempo de dlseno debe aslgnarle el valor lalse a esLa
propledad
8ackCo|or ermlLe aslgnar un color de fondo Ll color se puede aslgnar desde Lres ho[as y el
predeLermlnado se llama ConLrol que se encuenLra en la ho[a SlsLema
8ordesSty|e LsLa propledad permlLe camblar el esLllo del borde del conLrol Son Lres esLllos
none llxedSlngle llxed3u


ContextMenuStr|p Se uLlllza cuando deseamos mosLrar un menu
conLexLual cuando el usuarlo haga cllc derecho sobre el conLrol Ll
menu conLexLual debe esLar creado prevlamenLe uLlllzando el conLrol
ConLexMenuSLrlp Ln el slgulenLe e[emplo se muesLra un menu
conLexLual sobre una eLlqueLa

Cursor Se uLlllza para selecclonar el Llpo del punLero del mouse cuando se pase por el conLrol
Algunos Llpos de punLeros son

Dock LsLa propledad permlLe lndlcar la forma de acoplamlenLo del cursor Las
formas son las slgulenLes
La opcln none ublca el conLrol donde se dlbu[o Los slgulenLes e[emplos se
muesLran uLlllzando un boLn de comando
none 1op





8lghL
llll




Iont LsLa propledad permlLe aslgnar el Llpo esLllo y Lamano de leLra asl como algunos efecLos
con la que el conLrol mosLrara la lnformacln


IoreCo|or permlLe aslgnar un color a la leLra del conLrol Ll
color se puede selecclonar desde Lres ho[as y el
predeLermlnado se llama ConLrol1exL que se encuenLra en la
ho[a SlsLema La venLana que vlsuallza es la mlsma que la
propledad 8ackColor

Image LsLa propledad permlLe selecclonar
un graflco para que se muesLre en el conLrol
Al lngresar a esLa propledad se muesLra la
slgulenLe venLana
Ll boLn lmporLar permlLe selecclonar el
graflco Sl eleglmos la segunda opcln los
grflcos que selecclonemos formaran parLe
del proyecLo y se agregaran al explorador de
soluclones
Ll e[emplo muesLra 2 lmgenes selecclonadas
con la opcln Archlvo de cursos del
proyecLo

ImageA||gn LsLa propledad permlLe allnear el graflco denLro del conLrol 1lene las slgulenLes
opclones de allneacln
a) ImageIndex LsLa propledad permlLe lndlcar el numero del graflco
almacenado en un conLrol lmageLlsL que debe mosLrar el conLrol Label Ll
prlmer elemenLo es el numero cero ara que esLa propledad funclone
debe de agregar un conLrol lmageLlsL con algunos grflcos al proyecLo y
aslgnar el nombre de esa lmageLlsL en la propledad lmageLlsL del conLrol
Label L[emplo

b) Locat|on Se uLlllza para lndlcar la poslcln del conLrol en el formularlo Se le debe aslgnar dos
valores separados por un punLo y coma Ambos valores se refleren a la esqulna superlor derecha
del conLrol Ll prlmer valor lndlca la poslcln horlzonLal y el segundo la
poslcln verLlcal


c) Max|munS|ze Se uLlllza para lndlcar el Lamano mxlmo que puede Lener el conLrol AcepLa dos
valores separados por un punLo y coma Ll prlmer valor lndlca el Lamano mxlmo horlzonLal y el
segundo el Lamano mlnlmo verLlcal Sl no se desea aslgnar llmlLe ambos valores deben ser ceros


d) M|n|munS|ze Se uLlllza para lndlcar el Lamano mlnlmo que puede Lener el conLrol AcepLa dos
valores separados por un punLo y coma Ll prlmer valor lndlca el Lamano mlnlmo horlzonLal y el
segundo el Lamano mlnlmo verLlcal Sl no se desea aslgnar llmlLe ambos valores deben ser ceros

e) add|ng LsLa propledad se uLlllza para lndlcar el espaclo lnLerlor
del conLrol es declr el espaclo enLre los mrgenes y el LexLo graflco
que vlsuallcen
Ln el slgulenLe e[emplo se muesLra un conLrol Label con espaclos
lnLerloses

f) S|ze
LsLa propledad se uLlllza para lndlcar el Lamano del conLrol AcepLar
dos valores separados por punLo y coma que represenLan la esqulna lnferlor derecha ara poder
camblar esLos valores le debe aslgnar el valor lalse a la ropledad
AuLoSlze

g) 1abIndex LsLa propledad se uLlllza para lndlcar el orden de ublcacln del cursor en los conLroles
cada vez que se pulse la Lecla 1ab
h)1ag Se uLlllza para almacenar algun valor que podemos usar denLro de la e[ecucln de un
programa
|)1ext LsLa propledad permlLe almacenar el LexLo o valor que el conLrol debe mosLrar Ln
verslones anLerlores los conLroles Label usaban la propledad CapLlon
[)1extA||ng LsLa propledad permlLe allnear la lnformacln que se muesLra en un conLrol 1lene las
slgulenLes opclones de allneacln
k) UseMnemon|c LsLa propledad permlLe lndlcar sl se puede acceder a la eLlqueLa o conLrol
dlbu[ado lnmedlaLamenLe despues de la eLlqueLa al pulsar la Lecla precedlda por el slmbolo
|) UseWa|tCursor LsLa propledad permlLe lndlcar sl se cambla la propledad Cursor del conLrol al
valor WalLCursor L[emplo


m)V|s|b|e LsLa propledad permlLe lndlcar sl el conLrol
se debe vlsuallzar o no cuando se e[ecuLe la apllcacln

Ap||cac|n Desarro||ada N II02
LsLa apllcacln permlLe mosLrar el nombre edad y
dlsLrlLo de una persona Se uLlllza un conLrol Label llamado LbluaLo y cuaLro boLones de
comandos llamados 8Lnnombre 8LnLdad 8LnulsLrlLo y 8Lnllnallzar
Ll conLrol LbluaLo Llene en su propledad AuLoSlze el valor lalse en su propledad 1xLAllgn el valor
MlddleCenLer y en su propledad lonL el Lamano 12 y negrlLa

Al hacer cllc en un boLn se muesLra el daLo respecLlvo

lnsLrucclones de los boLones de comandos



Ap||cac|n Desarro||ada N II03

LsLe programa uLlllza una eLlqueLa (LblSaludo) y el evenLo lorm_Load para mosLrar un saludo al
e[ecuLarlo
ara desarrollar esLe programa solo debe dlbu[ar en un formularlo y una eLlqueLa llamada
LblSaludo y aslgnarle en su propledad AuLoSlze el valor lalse
lnsLrcclones del evenLo Load del formularlo
'Aslgna el LlLulo al formularlo
Me1exL Ml programa de L[emplo"
Allnea el LexLo del saludo al cenLro
LblSaludo1exLAllng ConLenLAllgnmenLMlddleCenLer
MuesLra el saludo en dos llneas dlferenLes
LblbSaludo1exL Pola a 1odos" Chr(13) Chr(13) 8lenvenldos a vlsual 8aslc 2008 Lxpress"

LL CCN1kCL 1Lk1 8Ck
LsLe conLrol es uLlllzado para lngresar daLos de una manera muy sencllla en una
apllcaclnSus prlnclpales propledades son
a)Name LsLa propledad permlLe aslgnarle un nombre al conLrol Se recomlenda que su nombre
emplece con las leLras 1xL
b)Acceptsketurn LsLa propledad su uLlllza para lndlcar sl en esLe conLrol se debe pasar a la
slgulenLe llnea cuando se pulse la Lecla LnLer sl esLa conflgurado para escrlblr en mulLlples llneas
c)Accepts1ab LsLa propledad se uLlllza para lndlcar sl el cursor debe pasar al slgulenLe conLrol
cuando el usuarlo pulse la Lecla 1ab
d)AutoComp|eteCustomSource LsLa propledad se uLlllza
cuando deseamos que el conLrol 1exL8ox auLocompleLe
alguna palabra que podemos escrlblr la leLra ! se auLo
compleLa con los meses que emplecen con esa lnlclal o
lnlclales
Al acLlvar esLa propledad se vlsuallzar la palabra
Coleccln y un boLn con Lres punLos

Al hacer cllc en el boLn con Lres punLos se vlsuallza la
slgulenLe venLana donde debe escrlblr sus lnlclales

e)AutoComp|eteMode LsLa propledad se uLlllza para lndlcar la forma como se deben auLo
compleLar las palabras en el conLrol 1exL8ox y son las slgulenLes
SuggesL Append
SuggesLAppend


f)AutoComp|eteSource LsLa propledad se uLlllza para lndlcar el orlgen de las palabras que se
deben auLo compleLar en el conLrol 1exL8ox
Lll[a CusLomSource para que se uLlllcen las palabras que ha escrlLo en la propledad
AuLoCompleLeCusLomSource
ara el programa de e[emplo se han escrlLo los meses del ano en la propledad
AuLoCompleLeCusLomSource





se han aslgnado los slgulenLes valores a las propledades


g)8orderSty|e LsLa propledad permlLe aslgnar un borde al conLrol 1exL8ox Los Llpos de bordes
son los slgulenLes

h) CharacterCas|ng LsLa propledad permlLe lndlcar sl las leLras que el usuarlo escrlbe en el conLrol
1exL8ox deben quedar como las escrlbe o converLlrse a mayusculas o mlnusculas

La opcln normal de[a las leLras como el usuarlo las escrlbe upper las convlerLe a mayusculas y
Lower las convlerLe a mlnuscllas

norm
al
upper
Lower



|)ContextMenuStr|p Se uLlllza cuando deseamos mosLrar un menu conLexLual cuando el usuarlo
haga cllc derecho sobre el conLrol Ll menu conLexLual debe esLar creado prevlamenLe uLlllzando el
conLrol ConLexLMenuSLrlp

[)Cursor Se uLlllza para selecclonar el Llpo del punLero del mouse cuando se pase por el conLrol Ll
predeLermlnado en esLe conLrol es l8eam

k)L|nes LsLa propledad se uLlllza para lngresar el LexLo en
modo de dlseno cuando el conLrol 1exL8ox esLa
conflgurado para uLlllzar mulLlples llneas Al lngresar a
esLa propledad se muesLra las slgulenLe venLa donde
debe escrlblr el LexLo deseado

|)Locked LsLa propledad se uLlllza para lndlcar sl se puede mover camblar el Lamano del conLrol
en Llempo de dlseno Cuando se le aslgna el valor 1rue a esLa propledad el conLrol no se podr
mover nl camblar de Lamano y el conLrol se vlsuallzara con un candado en la parLe superlor
derecha
m)MaxLength LsLa propledad se uLlllza para esLablecer la canLldad mxlma de caracLeres que
debe acepLar el conLrol 1exL8ox La canLldad predeLermlnada de caracLeres que acepLa el conLrol
es 32767
Ls muy lmporLanLe esLablecer la canLldad mxlma de caracLeres para los daLos que se lngresan en
un conLrol LexLo y que se van a grabar en una base de daLos segun la longlLud aslgnada a cada
campo
n)Mu|t|L|ne LsLa propledad se uLlllza para lndlcar sl el conLrol de acepLar varlas llneas de LexLo
Cuando se aslgna el valor 1rue a esLa propledad se debe lndlcar las barras de desplazamlenLo que
debe Lener el conLrol ara ello debe uLlllzar su propledad Scroll8ars
o)asswordChar Se uLlllza cuando queremos evlLar que se vlsuallcen los caracLeres que
escrlblmos en el conLrol 1exL8ox como por e[emplo cuando lngresamos conLrasenas AcepLa solo
un carcLer el cual reemplazara a Lodo lo que se escrlbe en el conLrol L[emplo


p)keadCn|y Se uLlllza para lndlcar sl el usuarlo puede escrlblr o modlflcar los daLos que se
encuenLran en el conLrol 1exL8ox Ln verslones anLerlores de vlsual 8aslc esLo se hacla con la
propledad Locked
q)k|ght1oLeft Ln esLa propledad se puede lndlcar sl el LexLo se puede escrlblr de derecha a
lzqulerda

|)Scro||8ars LsLa propledad se uLlllza para lndlcar la barra de desplazamlenLo que debe
acompanar el conLrol 1exL8ox cuando esLa conflgurado para escrlblr en mulLlples llneas es declr
cuando la propledad MulLlLlne Llene el valor 1rue La opcln 8oLh muesLra ambas barras verLlcal y
PorlzonLal


Ll slgulenLe formularlo muesLra una ca[a de LexLos conflgurada para que acepLe varlas llanas de
LexLo y con la barra de desplazamlenLo verLlcal

m)1abIndex LsLa propledad se uLlllza para lndlcar el orden de ublcacln del cursor en los
conLroles 1exL8ox cada vez que se pulse la Lecla 1ab
n)1abStop LsLa propledad se uLlllza para lndlcar sl el cursor se debe ublcar en el conLrol cuando el
usuarlo pulse la Lecla 1ab en el conLrol anLerlor
o)1ext Ln esLa propledad se almacena el LexLo que el usuarlo escrlbe en el conLrol 1exL8ox
p)1extA||gn LsLa propledad permlLe allnear un LexLo en el conLrol 1exL8ox 1lene las slgulenLes
opclones
q)UseWa|tCursor LsLa propledad permlLe lndlcar sl se cambla la propledad Cursor del conLrol al
valor WalLCurose L[emplo


r)V|s|b|e LsLa propledad permlLe lndlcar sl el conLrol se debe vlsuallzar o no cuando se e[ecuLa la
apllcacln
s)WordWrap Se uLlllza para lndlcar sl al llenarse una llnea el cursor debe pasar auLomLlcamenLe
a la slgulenLe cuando el conLrol esLa conflgurado en mulLlples llneas

Control DateTimePicker
El control DateTimePicker muestra por defecto la fecha actual que es posible modificar a
travs de su propiedad value.
Este control puede mostrar fechas u horas, si desea mostrar horas utilice:
nombreControl.Format = DateTimePickerFormat.Time
Control LinkLabel
A travs de este control es posible abrir el navegador por default y acceder a un URL
especifico:
LinkLabel1.LinkVisited = True
System.Diagnostics.Process.Start(LinkLabel1.Text)

Donde LinkLabel1.Text es el valor que tiene asignado la propiedad Text por ejemplo
file:///C:/pagina.html si quiere probar sin tener acceso a internet o si quiere probar con acceso
a internet seria http://www.elSitioWeb.com.
Si requiere especificar el navegador con el cual desea abrir el URL basta con sealarlo:
System.Diagnostics.Process.Start("firefox.exe", LinkLabel2.Text)
'La pgina se mostrara utilizando el navegador 17014

Es necesario sealar algo importante del cdigo y adentrarnos a la programacin .NET, ya que
el mtodo Start de la clase Process inicia en memoria un 574.084 de programa ejecutable
para el navegador.
La clase Process hace mucho ms que eso pero la parte a destacar es que forma parte de la
biblioteca de objetos System.Diagnostics la cual los programadores Visual Basic .NET
llaman espacio de nombres System.Diagnostics.
En cuanto al mtodo Process.Start destaca que adems de abrir una pgina web puede ser
utilizado para ejecutar otras aplicaciones:
System.Diagnostics.Process.Start(LinkLabel3.Text)
'Donde el valor de LinkLabel3.Text es "winword"

El mtodo Start utiliza 2 argumentos, el primero especifica la aplicacin a emplear y el
segundo especifica el archivo que abrira la aplicacin, es decir, el siguiente ejemplo abre el
archivo indicado con Microsoft Excel:
System.Diagnostics.Process.Start("excel", "c:pagos.xls")
Iunc|ones de t|empo y hora cargar doc o fotospag de manua| V8 2008
r|ntD|a|og y rontrev|ewD|a|ogpara |mpr|m|r doc
Impres|n de| doc (cas| a| f|na|)www
Conex|n con |a bddcas| a| f|na|www
http]]wwwcana|v|sua|bas|cnet]manua|net]vbnet]






Ap||cac|n Desarro||ada N II04
LsLe programa permlLe lngresar un nombre y mosLrar un saludo

ConLroles uLlllzados







Sl al hacer cllc en el boLn Saludo no se ha lngresado el nombre se vlsuallza el mensa[e error or
favor lngrese el nombre

lnsLrucclones del boLn 8LnSaludo
'regunLa sl se ha lngresado el nombre
lf 1xLnombre1exL1r|m "1hen
1kIM Sl8vL A8A 8C88A8 LCS LSAClCS Ln 8LAnCC CuL PAA Ln LL S18lnCMAnuAL WWW
'MuesLra el mensa[e de error
Message8oxShow(lngrese el nombre" or lavor")
'ublca el cursor en el conLrol 1xLnombre
1xLnombrelocus()
LxlL Sub
Lnd lf
'ueflne la varlable nombre y le aslgna el valor lngresado
ulm nombre As SLrlng 1xLnombre1exL
'Allnea el LexLo del aludo al cenLro de la eLlqueLa
LblSaludo1exLAllgn ConLenLAllgnmenLeMlddleCenLer
'MuesLra el saludo
LblSaludo1exL Pola Chr(13) nombre Chr(13) Chr(13) 8lenvenldo a vlsual 8aslc
2008 Lxpress"


Ap||cac|n Desarro||ada N II0S
ermlLe lngresar el nombre y Lres noLas y mosLrar los punLos y el promedlo Sl esLa aprobado su
promedlo se muesLra en azul de lo conLrarlo en ro[o







ConLroles uLlllzados

Alos conLroles LblunLos Lblbromedlo aslgneles en su propledad AuLoslze el valor lalse
lnsLrucclones del 8oLn
8LnCalcular







lnsLrucclones del 8oLn
8Lnnuevo





lnsLrucclones del 8oLn 8LnCerrar

ode
mos modlflcar las lnsLrucclones del boLn calcular para que verlflque el lngreso correcLo de las
noLas
f txtnombre.Text.Trim = ""Then
MessageBox.Show("ngrese el Nombre del Alumno", "Por Favor",
MessageBoxButtons.JK, MessageBoxcon.nformation)
txtnombre.Focus()
ExitSub
Endf
f txtnota1.Text.Trim = ""JrSingle.Parse(txtnota1.Text.Trim) < 0
JrSingle.Parse(txtnota1.Text.Trim) 20 Then
MessageBox.Show("ngrese la Nota 1", "Entre 0 y 20",
MessageBoxButtons.JK, MessageBoxcon.Error)
txtnota1.Text = ""
txtnota1.Focus()
ExitSub
Endf
f txtnota2.Text.Trim = ""JrSingle.Parse(txtnota2.Text.Trim) < 0
JrSingle.Parse(txtnota2.Text.Trim) 20 Then
MessageBox.Show("ngrese la Nota 2", "Entre 0 y 20",
MessageBoxButtons.JK, MessageBoxcon.Error)
txtnota2.Text = ""
txtnota2.Focus()
ExitSub
Endf
f txtnota3.Text.Trim = ""JrSingle.Parse(txtnota3.Text.Trim) < 0
JrSingle.Parse(txtnota3.Text.Trim) 20 Then
MessageBox.Show("ngrese la Nota 3", "Entre 0 y 20",
MessageBoxButtons.JK, MessageBoxcon.Error)
txtnota3.Text = ""
txtnota3.Focus()
ExitSub
Endf
Dim nota1, nota2, nota3, puntos, promedio AsSingle
nota1 = Single.Parse(txtnota1.Text)
nota2 = Single.Parse(txtnota1.Text)
nota3 = Single.Parse(txtnota1.Text)
puntos = nota1 + nota2 + nota3
promedio = puntos / 3
lblpuntos.Text = puntos.ToString
lblpromedio.Text = promedio.ToString
f promedio = 10.5 Then
lblpromedio.ForeColor = Color.Blue
Else
lblpromedio.ForeColor = Color.Red
Endf

ALlCAClCn uLSA88CLLAuA n ll06
LsLe programa permlLe lngresar el nombre de un cllenLe y el monLo LoLal de su facLura y calcula y
muesLra por separado lmporLe e lCv (19) La suma del lmporLe e lCv debe dar el monLo de la
facLura





ConLroles uLlllzados

lnsLrucclones del boLn bLncalcular
Dim monto, importe, igv AsDouble
monto = Double.Parse(txtmonto.Text)
igv = monto 0.19
importe = monto - igv
lblimporte.Text = importe.ToString("###,##0.00")
lbligv.Text = igv.ToString("###,##0.00")
lnsLrucclones del boLn bLnnuevo
txtcliente.Text = ""
txtmonto.Text = ""
lblimporte.Text = ""
lbligv.Text = ""
txtcliente.Focus()
lnsLrucclones del boLn bLncerrar
End

ALlCAClCn uLSA88CLLAuA n ll07
LsLe programa permlLe lngresar un numero e lndlcar sl es par o lmpar ConLlene oLra forma de
borrar el conLenldo de una ca[a de LexLos y de converLlr valores

Ln los programas anLerlores se uLlllza parse para converLlr los valores lngresados en conLroles
LexLbox al Llpo de daLo que se ha deflnldo la varlable donde se almacenan
Ln esLe programa se uLlllza la funcln cLype que Lamblen permlLe reallzar converslones de daLos
ara llmplar el conLenldo de un conLrol LexLbox se le puede aslgnar un valor vaclo enLre comlllas
or e[emplo
1xLdaLoLexL "
Ln esLe programa se uLlllza la funcln clear de los conLroles LexLbox que permlLen llmplar su
conLenldo
ConLroles uLlllzados




lnsLrucclones del boLn bLnver
f txtnumero.Text.Trim = ""Then
MessageBox.Show("ngrese un Numero", "Por Favor", MessageBoxButtons.JK,
MessageBoxcon.Error)
txtnumero.Clear()
txtnumero.Focus()
ExitSub
Endf
Dim Numero Asnteger
Numero = CType(txtnumero.Text, nteger)

f (Numero Mod 2) = 0 Then
lblmensaje.Text = "El N "& Numero &" es Par"
Else
lblmensaje.Text = "El N "& Numero &" es mpar"
Endf
LL CCn18CL CCn1Lx1MLnuS18l

ermlLe crear un menu conLexLual en un formularlo el cual se podra enlazar a cualqulen
conLrol para que se vlsuallza cuando se hace cllc derecho
Cuando se dlbu[a en el formularlo o se selecclona se muesLra la venLana para escrlblr las
opcoones que debe mosLrar el menu conLexLual ublque el cursor en cada ca[a donde
dlce Lscrlba aqul y escrlba las opclones

Las propledades que se vlsuallzan dependen sl se ha selecclonado el conLrol
ConLexLMenuSLrlp o una de las opclones del menu
Las prlnclpales propledaddes cuando se selecclona el conLrol son
Name
LsLa propledad permlLe aslgnarle un nombre al conLrol
AutoC|ose
LsLa propledad permlLe lndlcar sl el menu conLexLual se debe cerrar auLomaLlcamenLe
despues de eleglr una opcln
8ackgroundImage
LsLa propledad permlLe selecclonar un graflco que servlra de dondo al menu conLexLual
ImageSca||ngS|ze
LsLa propledad permlLe lndlcar el Lamano de los graflcos que pueden acompanar a las
opclones del menu conLexLual Los valores predeLermlnados son 1616




Items
LsLa propledad permlLe acceder a la venLana donde se puede agregar y/o edlLar las
opclones del menu conLexLual
1amblen se vlsuallzan las propledades de cada una de ellas
La venLana que se vlsuallza al lngresar a esLa propledad es

ShowChechMarg|n
ermlLe lndlcar sl se debe mosLrar el margen lzqulerdo del menu conLeLual donde se
muesLra el check que lndlca sl la opclon esLa elegla o no
ShowImageMarg|n
ermlLe lndlcar sl se debe mosLrar los graflcos aslgnados a cada una de las opclones del
menu conLexLual
ShowItem1oo|1|ps
ermlLe lndlcar sl se debe mosLrar el LexLo de la propledad 1ool1lp1exL
1extD|rect|on
ermlLe lndlcar la dlrecclon del LexLo de las opclones del menu
Las prlnclpales propledades cuando se selecclona una opclon son
Name
LsLa propledad permlLe sglnarle un nombre a la opclon Ln forma predeLermlnada Loma el
nombre del LexLo escrlLo para la opclon seguro de 1oolSLrlpMenulLem
Checked

LsLa propledad permlLe lndlcar sl la casllla de verlflcaclon de la opclon debe esLar acLlvada
o desacLlvada ara que se vlsuallce la casllla debe asglnar el valor
CheckCnC||ck
LsLa propledad permlLe lndlcar sl la casllla de verlflcacln de la opcln debe acLlvar y
desacLlvar cuando se haga cllc en la opcln
CheckState
ermlLe lndlcar el esLado de la casllla de verlflcacln de la opcln

D|sp|aySty|e
ermlLe lndlcar lo que se bede mosLrar en la opclon

Image
Ln esLa propledad se puede selecclonar un graflco que se mosLrara [unLo a la opcln Se
vlsuallza la slgulenLe venLana donde lo puede selecclonar

ShortCutkeyD|sp|a
yStr|ng
Ln esLa propledad
se puede escrlblr
un LexLo que
reemplazara al
LexLo que
represenLa a la
comblnacln de
Leclas de acceso rpldo en la opcln
ShortCutkeys
ermlLe lndlcar la comblnacln de Leclas de acceso rpldo a la opcln del menu
conLexLual
Al lngresar a esLa pocln se vlsuallza la slgulenLe venLana

Ln la venLana anLerlor debe acLlvar la Lecla prlnclpal y luego selecclonar en el combo la
Lecla segundarla or e[emplo en la slgulenLe venLana se ha elegldo C81L + n para la
opcln selecclonada

ShowShortCutkeys
ermlLe lndlcar sl la comblnacln de Leclas de acceso rpldo a la opcln se debe vlsuallzar
[unLo a la opcln
1oo|1|p1ext
LsLa propledad permlLe escrlblr un LexLo que se vlsuallzara cuando se pase el punLero del
mouse por una opcln
uespues de crear el menu conLexLual como se muesLra a conLlnuacln
uebe hacer doble cllc en cada una de las opclones para escrlblr las lnsLrucclones que
deben e[ecuLar 1amblen puede hacer cllc en el boLn ver Cdlgo Ln el slgulenLe e[emplo
se ha hecho doble cllc en la opcln Ldad


Ap||cac|n Desarro||ada N II08

LsLe programa permlLe mosLrar el nombre edad o dlsLrlLo de una persona uLlllzando un
menu conLexLual que funclona denLro de un conLrol Label y cual se uLlllza para mosLrar el
daLo selecclonado Ll menu conLexLual Lamblen Llene la opcln para flnallzar el programa
L[emplo

ara desarrollar esLe programa debe dlbu[ar en su formularlo un conLrol Label llamado
LbluaLo y un conLrol ConLexLMenuSLrlp1

Al conLrol Label le debe aslgnar valores en las slgulenLes propledades





Ln el menu conLexLual debe Lener las slgulenLes opclones




lnsLrucclones de la opcln del menu conLexLual

Ap||cac|n Desarro||ada N II09

LsLe programa permlLe lngresar el nombre y 3 noLas de un alumno y mosLrar los punLos
obLenldos y su promedlo
LsLe programa no Llene nlngun boLn de comando las opclones para Clacular el
romedlo lngresar los daLos de un nuevo alumno y flnallzar un programa se ellgen de un
menu conLexLual que se esLa enlazando al formularlo es declr el menu conLexLual se
muesLra cuando se hace cllc derecho en cualquler parLe del formularlo Ll menu
conLexLual es el slgulenLe

ara desarrollar esLe programa debe de dlbu[ar los slgulenLes conLroles lncluyendo el
conLrol ConLexLMenuSLrlp para crear el menu conLexLual

Ll formularlo Llene como LlLulo CL1ul y lo debe enlazar con el conLrol ConLexLMenuSLrlp1
como se muesLra a conLlnuacln

Los conLroles LblunLos y Lblromedlo deben Lener las slgulenLes propledades


Ll menu conLexLual debe Lener las slgulenLes opclones

Instrucc|ones de |a opc|n Ca|cu|ar
ulm promedlo AsSlngle
LblunLos1exL val(1xLn11exL) + val(1xLn21exL) + val(1xLn31exL)
promedlo LblunLos1exL / 3
lf promedlo 103 1hen
LblromedloloreColor Color8lue
Llse
LblromedloloreColor Color8ed
Lndlf
Lblromedlo1exL promedlo
LndSub
Instrucc|ones de |a opc|n Nuevo
1xLnombre1exL
1xLn11exL
1xLn21exL
1xLn31exL
Lblromedlo1exL
LblunLos1exL
1xLnombrelocus()
Instrucc|ones de |a opc|n Cerrar
Lnd
Ap||cac|n Desarro||ada N II10
LsLe programa permlLe lngresar los mlsmos daLos y mosLrar los mlsmos resulLados del
programa anLerlor

Se dlferenclan porque Llene las slgulenLes caracLerlsLlcas
Los resu/todos se co/cu/on y muestron en formo outomticos cuondo se hon
inqresodo e/ nombre de/ o/umno y sus tres notos
2 Los notos deben ser nmeros entre 0 y 20 de
/os controrio se muestro e/ siquiente mensoje de error

l / cursor poso o /o siquiente cojo de textos o/ pu/sor /o tec/o nter

4 4/ pu/sor /o tec/o nter en /o noto N l /os dotos se /impion poro inqresor /o dotos
de un nuevo o/umno

5 / proqromo fino/ito cuondo se pu/so /o tec/o c

Los conLroles para esLe programa son los mlsmos que se usaron en el programa anLerlor a
excepcln del conLrol ConLexLMenuSLrlp

Al formularlo le debe aslgnar el valor 1rue en su propledad keyrevlew

LsLe valor permlLlr que el formularlo deLecLe la pulsacln de la Lecla LSC para que el
programa flnallce
A los conLroles 1xLnoLa1 1xLnoLa2 y 1xLnoLa3 debe aslgnarle el valor 2 en su propledad
MaxLengLh

LsLe valor permlLlr que solo se lngresen dos caracLeres La verlflcacln que sean
numerlcos y enLre 0 y 20 se reallza denLro del programa
Los conLroles LblunLos y Lblromedlo deben Lener las mlsmas propledades del programa
anLerlor


uespues de dlbu[ar los conLroles y aslgnar las propledades debe lmporLar el espaclo de
nombre MlcrosofLvlsual8aslc para uLlllzar la funcln LSnumerlc que permlLe saber sl un
valor es numerlco o no LsLo se reallza en la seccln de declaracln del formularlo

ara esLe programa Lamblen debe crear cuaLro procedlmlenLos llamados Calcular nuevo
Llmplar y Comprobar
ara crear un procedlmlenLo ublque el cursor deba[o de cualquler palabra Lnd Sub y
escrlba Sub y el nombre del procedlmlenLo que desea crear

uespues de escrlblr Sub y el nombre del procedlmlenLo pulse LnLer

Las |nstrucc|ones de |os proced|m|entos son |os s|gu|entes
rocedlmlenLo nuevo LsLe procedlmlenLo llmpla el conLenldo de los conLroles para
lngresar los daLos de un nuevo alumno
Sub nuevo()
1xLnombre1exL
1xLn11exL
1xLn21exL
1xLn31exL
Lblromedlo1exL
LblunLos1exL
1xLnombrelocus()
LndSub
rocedlmlenLo Llmplar LsLe procedlmlenLo llmpla los resulLados del programa es declr los
punLos y el promedlo del alumno LsLe procedlmlenLo es llamado cuando por e[emplo se
ha lngresado en forma lncorrecLa una de las noLas
Sub Llmplar()
LblunLos1exL
Lblromedlo1exL
LndSub
rocedlmlenLo Comprobar LsLe procedlmlenLo se e[ecuLa cuando se lngresan o modlflcan
los daLos Sl Lodos los daLos se han lngresado llama al procedlmlenLo Calcular de lo
conLrarlo llama al procedlmlenLo Llmplar
Sub Comprobar()

lf 1xLnombre1exL And lsnumerlc(1xLn11exL) And lsnumerlc(1xLn21exL) And
lsnumerlc(1xLn31exL) 1hen
Call Calcular()
Llse
Call Llmplar()
Lndlf
LndSub
rocedlmlenLo Calcular LsLe procedlmlenLo calcula y muesLras los punLos y promedlo del
alumno 1amblen verlflca que las noLas esLen enLre 0 y 20
Sub Calcular()
lf val(1xLn11exL) 0 Cr val(1xLn11exL) 20 1hen
Msg8ox(La noLa 1 debe esLar enLre 0 y 20 Msg8oxSLyleCrlLlcal verlflque)
1xLn11exL
1xLn1locus()
LxlLSub
Lndlf
lf val(1xLn21exL) 0 Cr val(1xLn21exL) 20 1hen
Msg8ox(La noLa 2 debe esLar enLre 0 y 20 Msg8oxSLyleCrlLlcal verlflque)
1xLn21exL
1xLn2locus()
LxlLSub
Lndlf
lf val(1xLn31exL) 0 Cr val(1xLn31exL) 20 1hen
Msg8ox(La noLa 3 debe esLar enLre 0 y 20 Msg8oxSLyleCrlLlcal verlflque)
1xLn31exL
1xLn3locus()
LxlLSub
Lndlf
ulm promedlo AsSlngle
LblunLos1exL val(1xLn11exL) + val(1xLn21exL) + val(1xLn31exL)
promedlo (val(1xLn11exL) + val(1xLn21exL) + val(1xLn31exL)) / 3
lf promedlo 103 1hen
LblromedloloreColor Color8lue
Llse
LblromedloloreColor Color8ed
Lndlf
Lblromedlo1exL promedlo
LndSub
Instrucc|ones de| evento Load de| Iormu|ar|o
LsLas lnsLrucclones llaman al procedlmlenLo nuevo para llmplar el conLenldo de los
conLroles

Instrucc|ones de| evento keyress de| formu|ar|o
LsLas lnsLrucclones flnallzan en programa cuando el usuarlo pulsa la Lecla Lsc

Instrucc|ones de| evento keyress de| contro| 1xtNombre
LsLas lnsLrucclones pasan el cursor al conLrol 1xLnoLa1 cuando el usuarlo pulsa la Lecla
LnLer despues de lngresar el nombre

Instrucc|ones de| evento keyress de| contro| 1xtNota1
LsLas lnsLrucclones pasan el cursor al conLrol 1xLnoLa2 cuando el usuarlo pulsa la Lecla
LnLer despues de lngresar la noLa n1

Instrucc|ones de| evento keyress de| contro| 1xtNota2
LsLa lnsLrucclones pasan el cursor al conLrol 1xLnoLa2 cuando el usuarlo pulsa la Lecla
LnLer despues de lngresar la noLa n1

Instrucc|n de| evento keyress de| contro| 1xtNota3

LsLas lnsLrucclones
llmplan los daLos lngresados cuando el usuarlo pulsa la Lecla LnLer despues de lngresar la
noLa n3

Instrucc|ones de| evento 1extChanged de |os contro|es 1ext8ox
LsLas lnsLrucclones llaman al procedlmlenLo Comprobar que verlflca sl se han lngresado
Lodos los daLos para llamar al procedlmlenLo calcular o al procedlmlenLo Llmplar








IUNCICNLS DLL VISUAL
8ASIC NL1

C o n t e n | d o
n esLe caplLulo usLed aprender a uLlllzar las funclones
que ofrece el vlsual 8aslc neL

O lunciones tipo lecho
O lunciones tipo codeno
O lunciones Numricos
O tros luncione
O contro/ de xcepciones





IUNCICNLS 1IC ILCnA
L
Now
LsLa funcln devuelve la fecha y hora del slsLema La slgulenLe lnsLruccln muesLra la fecha y hora
en el conLrol Label 1 Se pueden escrlblr en el evenLo Load del lormularlo
Label 11exL now

Ll formaLo en el que se vlsuallza la fecha y hora depende de la conflguracln que Llene la
compuLadora

ara camblar la conflguracln lngrese al anel de ConLrol y ell[a la slgulenLe opcln


1|meStr|ng
LsLa funcln devuelve slo la hora del slsLema como una cadena de caracLeres La slgulenLe
lnsLruccln muesLra la hora en el conLrol Label1


Label11exL 1lmeSLrlng

DateStr|ng
LsLa funcln devuelve slo la fecha del slsLema como una cadena de caracLeres La slgulenLe
lnsLruccln muesLra la fecha en el conLrol Label1


Label11exL uaLeSLrlng

1oDate
LsLa funcln devuelve Lamblen la fecha del slsLema
nour
LsLa funcln devuelve slo el numero de la hora del slsLema
M|nute
LsLa funcln devuelve slo los mlnuLos de la hora del slsLema
Seconds
LsLa funcln devuelve slo los segundos de la hora del slsLema
La slgulenLe lnsLruccln muesLra en forma separada las horas mlnuLos y segundos de la hora del
slsLema
Label11exL Son las Pour(1lmeSLrlng) horas con MlnuLe(1lmeSLrlng) mlnuLos y
Second(1lmeSLrlng) segundos"

Day
LsLa funcln devuelve slo el numero del dla de la fecha del slsLema
Month
LsLa funcln devuelve slo el numero del mes de la fecha del slsLema
MonthName
LsLa funcln devuelve el nombre del numero del mes de una fecha
ear
LsLa funcln devuelve slo el ano de la fecha del slsLema
Las slgulenLes lnsLrucclones devuelven los daLos anLerlores separados
Label11exL Poy es MlcrosofLvlsual8aslcuaLeAnd1lmeuay(now) del mes
MonLhname(MonLh(now)) del ano ear(now)

WeekDay
LsLa funcln devuelve un numero enLre 1 y 7 que represenLa el numero del dla de la semana
WeekDayName
LsLa funcln devuelve el nombre del numero del dla de la semana
Las slgulenLes lnsLrucclones muesLran en el conLrol Label1 el numero y nombre del dla de la
semana
Label11exL Ll dla de la semana es Weekdayname(Weekday(now)) y Llene el numero
Weekday(now)

IsDate
LsLa funcln devuelve el valor 1rue sl un valor es de Llpo lecha
Las slgulenLes lnsLrucclones muesLran un mensa[e lndlcando sl el conLenldo del conLrol 1exL8ox1
es de Llpo fecha
lf lsuaLe(1exL8ox11exL) 1hen
Msg8ox(Sl es una fecha")
Llse
Msg8ox(no es una fecha")
Lnd lf
Ap||cac|n Desarro||ada N III01
LsLe programa permlLe lngresar una fecha y mosLrar por separado Loda su lnformacln Ll
programa verlflca que se lngrese una fecha correcLa

Sl el usuarlo no lngresa correcLamenLe una fecha en el conLrol 1exL8ox se vlsuallza el slgulenLe
mensa[e de error

Contro|es de| formu|ar|o
LsLe formularlo esLa compuesLo por una ca[a de LexLos llamada 1xLlecha un boLn llamado
8Lnver y por conLroles Label donde se muesLran los resulLados deseados

Los conLroles Labels que Llene un nombre aslgnado y donde se vlsuallzan los resulLados Llene las
slgulenLes propledades



Instrucc|ones de| evento Load de| formu|ar|o
'MuesLra en forma predeLermlnada la fecha del slsLema
1xLlecha1exL 1oday()
Instrucc|ones de| botn Ver
'regunLa sl es una fecha correcLa
lf lsuaLe(1xLlecha1exL) 1rue 1hen
'ueflne una varlable y almacena la fecha lngresada
ulm lecha As uaLe uaLearse(1xLlecha1exL)
'MuesLra la lnformacln de la fecha lngresada
Lblula1exL MlcrosofLvlsual8aslcuay(lecha)
LblMes1exL MonLh(lecha)
LblAno1exL ear(lecha)
Lblns1exL Weekday(lecha)
Lblnm1exL MonLhname(MonLh(lecha))
Lblnds1exL Weekdayname(Weekday(lecha))
Llse
'MuesLra el mensa[e sl no es una fecha correcLa
Msg8ox(no es una fecha correcLa" Msg8oxSLyleCrlLlcal verlflque")
'Llmpla el conLenldo de la ca[a de LexLos
1xLlechaClear()
'ublca el cursor en la ca[a de LexLos
1xLlechalocus()
Lnd lf
DateD|ff
LsLa funcln devuelve la dlferencla enLre dos fechas
Su slnLaxls es
uaLeulff(lnLervalolecha1lecha2)
La lecha1 es la fecha menor y la lecha2 es la fecha mayor Sl se lnLercamblan las fechas el
resulLado es un numero negaLlvo Ll lnLervalo es el Llempo en el cual se va a calcular la dlferencla
enLre las dos fechas y puede Lener cualqulera de los slgulenLes valores

Las slgulenLes lnsLrucclones muesLran en un conLrol llamado Lblulas la dlferencla en dlas enLre el
01032006 y el 03032006
ulm A8 As uaLe
A uaLearse(01032006")
8 uaLearse(03032006")
Lblulas1exL La dlferencla es " uaLeulff(uaLelnLervaluay A 8) ulas"

Las slgulenLes lnsLrucclones muesLran en un conLrol llamado LblPoras la dlferencla en horas enLre
el 01032006
ulm A 8 As uaLe
A uaLearse(01032006")
8 uaLearse(02032006")
LblPoras1exL La dlferencla es " uaLeulff(uaLelnLervalPour A 8) Poras"

Las slgulenLes lnsLrucclones muesLran en un conLrol llamado LblMlnuLos la dlferencla en mlnuLos
enLre las 1603 y las 1620
ulm A 8 As uaLe
A uaLearse(1603")
8 uaLearse(1620")
LblMlnuLos1exL La dlferencla es " uaLeulff(uaLelnLervalMlnuLe A 8) MlnuLos"

Ap||cac|n Desarro||ada N III02
LsLe programa permlLe lngresar dos fechas y mosLrar la dlferencla de esas dos fechas en dlas
semanas meses y anos


Ln esLa venLana de e[emplo se muesLra la dlferencla en semanas




Ln esLa venLana de e[emplo se muesLra la dlferencla en
meses




Ln esLa venLana de e[emplo se muesLra la dlferencla en
anos



LsLe programa esL compuesLo por los slgulenLes conLroles

Ll conLrol Lbl1lempo Llene las slgulenLes propledades



Instrucc|ones de| botn 8tnD|as
ulm lecha1 lecha2 As uaLe
ulm 1lempo As lnLeger
lecha1 uaLearse(1xLlecha11exL)
lecha2 uaLearse(1xLlecha21exL)
1lempo uaLeulff(uaLelnLervaluay lecha1 lecha2)
Lbl1lempo1exL Son 1lempo ulas de dlferencla"
Instrucc|ones de| botn 8tnSemanas
ulm lecha1 lecha2 As uaLe
ulm 1lempo As lnLeger
lecha1 uaLearse(1xLlecha11exL)
lecha2 uaLearse(1xLlecha21exL)
1lempo uaLeulff(uaLelnLervalWeekday lecha1 lecha2)
Lbl1lempo1exL Son 1lempo Semanas de dlferencla"
Instrucc|ones de| botn 8tnMeses
ulm lecha1 lecha2 As uaLe
ulm 1lempo As lnLeger
lecha1 uaLearse(1xLlecha11exL)
lecha2 uaLearse(1xLlecha21exL)
1lempo uaLeulff(uaLelnLervalMonLh lecha1 lecha2)
Lbl1lempo1exL Son 1lempo Meses de dlferencla"
Instrucc|ones de| botn 8tnAos
ulm lecha1 lecha2 As uaLe
ulm 1lempo As lnLeger
lecha1 uaLearse(1xLlecha11exL)
lecha2 uaLearse(1xLlecha21exL)
1lempo uaLeulff(uaLelnLervalear lecha1 lecha2)
Lbl1lempo1exL Son 1lempo Anos de dlferencla"
DateAdd
LsLa funcln permlLe lncremenLar o dlsmlnulr un lnLervalo de Llempo a una fecha
Su slnLaxls es
uaLeAdd(lnLervalonumerolecha)
Ll numero es el valor que se le va a lncremenLar o dlsmlnulr a la fecha Sl el valor es negaLlvo se
dlsmlnuye a la fecha Ll lnLervalo puede ser cualqulera de los slgulenLes valores

Las slgulenLes lnsLrucclones lncremenLan 3 dlas a la fecha 24082006
ulm A As uaLe
A uaLearse(24082006")
LblMlnuLos1exL La nueva fecha es uaLeAdd(uaLelnLervaluay 3 A)


Ap||cac|n Desarro||ada N III03
LsLe programa permlLe lngresar una fecha y un numero y muesLra una nueva fecha lncremenLada
o dlsmlnulda en dlas semanas meses y anos



Ln esLa venLana de e[emplo se muesLra la lncremenLada
en dlas




Ln esLa venLana de e[emplo se muesLra la lncremenLada
en semanas




Ln esLa venLana de e[emplo se muesLra la
lncremenLada en meses




Ln esLa venLana de e[emplo se muesLra la lncremenLada
en anos





ConLroles del formularlo



Instrucc|ones de| botn 8tnD|as
ulm lecha nuevalecha As uaLe
ulm 1lempo As lnLeger
lecha uaLearse(1xLlecha1exL)
1lempo lnLegerarse(1xL1lempo1exL)
nuevalecha uaLeAdd(uaLelnLervaluay 1lempo lecha)
Lblnuevalecha1exL La nueva fecha es nuevalecha
Instrucc|ones de| botn 8tnSemanas
ulm lecha nuevalecha As uaLe
ulm 1lempo As lnLeger
lecha uaLearse(1xLlecha1exL)
1lempo lnLegerarse(1xL1lempo1exL)
nuevalecha uaLeAdd(uaLelnLervalWeekCfear 1lempo lecha)
Lblnuevalecha1exL La nueva fecha es nuevalecha
Instrucc|ones de| botn 8tnMeses
ulm lecha nuevalecha As uaLe
ulm 1lempo As lnLeger
lecha uaLearse(1xLlecha1exL)
1lempo lnLegerarse(1xL1lempo1exL)
nuevalecha uaLeAdd(uaLelnLervalMonLh 1lempo lecha)
Lblnuevalecha1exL La nueva fecha es nuevalecha
Instrucc|ones de| botn 8tnAos
ulm lecha nuevalecha As uaLe
ulm 1lempo As lnLeger
lecha uaLearse(1xLlecha1exL)
1lempo lnLegerarse(1xL1lempo1exL)
nuevalecha uaLeAdd(uaLelnLervalear 1lempo lecha)
Lblnuevalecha1exL La nueva fecha es nuevalecha
Ap||cac|n Desarro||ada N III038
LsLe programa es slmllar al anLerlor se dlferencla porque esL desarrollado con una funcln


La funcln que uLlllza esLe programa se llama nuevalecha la cual slo Llene un parmeLro que
lndlca un lnLervalo de Llempo que se debe lncremenLar a la fecha y puede Lener los slgulenLes
valores
1 ulas
2 Semanas
3 Meses
4 Anos
Las |nstrucc|ones de |a func|n son |as s|gu|entes
Iunct|on NuevaIecha(8yVa| Interva|o As 8yte) As Str|ng
ulm nueva As uaLe
ulm lecha As uaLe
ulm 1lempo As lnLeger
lecha uaLearse(1xLlecha1exL)
1lempo lnLegerarse(1xL1lempo1exL)
SelecL Case lnLervalo
Case 1
nueva uaLeAdd(uaLelnLervaluay 1lempo lecha)
Case 2
nueva uaLeAdd(uaLelnLervalWeekCfear 1lempo lecha)
Case 3
nueva uaLeAdd(uaLelnLervalMonLh 1lempo lecha)
Case 4
nueva uaLeAdd(uaLelnLervalear 1lempo lecha)
Lnd SelecL
8eLurn La nueva fecha es nueva
Lnd luncLlon
Instrucc|ones de| botn 8tnD|as
Lblnuevalecha1exL nuevalecha(1)
Instrucc|ones de| botn 8tnSemanas
Lblnuevalecha1exL nuevalecha(2)
Instrucc|ones de| botn 8tnMeses
Lblnuevalecha1exL nuevalecha(3)
Instrucc|ones de| botn 8tnAos
Lblnuevalecha1exL nuevalecha(4)
Dateart
LsLa funcln permlLe obLener un daLo de una fecha reemplazando a algunas funclones esLudladas
anLerlormenLe
Su slnLaxls es
uaLearL(uaLolecha)
Ll daLo es cualqulera de las opclones que Llenen las funclones Llpo fecha

DateInterva|Day
CbLlene el numero del dla del mes que puede ser enLre 1 y 31 dependlendo del mes de la fecha
L[emplo las slgulenLes lnsLrucclones muesLran el 13
ulm lecha As uaLe
lecha uaLearse(13072006")
Lbl8esulLado1exL uaLearL(uaLelnLervaluay lecha)1oSLrlng

DateInterva|DayCfear
CbLlene el numero del dla del ano que puede ser enLre 1 y 363 dependlendo de la fecha
L[emplo Las slgulenLes lnsLrucclones muesLran el numero 32 porque el dla 01022006 es el dla n
32 del ano
ulm lecha As uaLe
lecha uaLearse(01022006")
Lbl8esulLado1exL uaLearL(uaLelnLervaluayCfear lecha)1oSLrlng

DateInterva|nour
CbLlene las horas cuando denLro de la fecha se encuenLran las horas
L[emplo Las slgulenLes lnsLrucclones muesLran el 13 porque la fecha conLlene las 13 horas y 20
mlnuLos
ulm lecha As uaLe
lecha uaLearse(3182006 1320")
Lbl8esulLado1exL uaLearL(uaLelnLervalPour lecha)1oSLrlng

DateInterva|M|nute
CbLlene los mlnuLos cuando denLro de la fecha se encuenLran las horas
L[emplo Las slgulenLes lnsLrucclones del boLn ver muesLran el 20 porque la fecha conLlene las 13
horas y 20 mlnuLos
ulm lecha As uaLe
lecha uaLearse(3182006 1320")
Lbl8esulLado1exL uaLearL(uaLelnLervalMlnuLe lecha)1oSLrlng

DateInterva|Month
CbLlene el numero del mes de la fecha
L[emplo Las slgulenLes lnsLrucclones muesLran el numero 8 porque la fecha es del mes de AgosLo
ulm lecha As uaLe
lecha uaLearse(31082006 1320")
Lbl8esulLado1exL uaLearL(uaLelnLervalMonLh lecha)1oSLrlng

DateInterva|uarter
CbLlene un numero del 1 al 4 que represenLa el LrlmesLre del ano al que perLenece la fecha como
se expllca en el slgulenLe cuadro
1rlmesLre

8ango de lechas
1 uel 0101 Al 3103
2 uel 0103 Al 3006
3 uel 0107 Al 3009
4 uel 0110 Al 3112

L[emplo Las slgulenLes lnsLrucclones muesLran el numero 3 porque la fecha 04072006 perLenece
al 3er 1rlmesLre
ulm lecha As uaLe
lecha uaLearse(24072006")
Lbl8esulLado1exL uaLearL(uaLelnLervalCuarLer lecha)1oSLrlng

L[emplo Las slgulenLes lnsLrucclones muesLran el numero 1
ulm lecha As uaLe
lecha uaLearse(12012006")
Lbl8esulLado1exL uaLearL(uaLelnLervalCuarLer lecha)1oSLrlng

DateInterva|Second
CbLlene los segundos cuando denLro de la fecha se encuenLran las horas
L[emplo Las slgulenLes lnsLrucclones del boLn ver muesLran el 43 porque la fecha conLlene las 20
horas 13 mlnuLos y 43 segundos
ulm lecha As uaLe
lecha uaLearse(24032006 201343")
Lbl8esulLado1exL uaLearL(uaLelnLervalSecond lecha)1oSLrlng

DateInterva|WeekDay
CbLlene el numero del dla de la semana que puede ser enLre 1 y 7 dependlendo de la fecha Ll dla
domlngo es el n 1
L[emplo Las slgulenLes lnsLrucclones muesLran el 1 porque la fecha uLlllzada en la funcln 0302
2006 es un dla domlngo
ulm lecha As uaLe
lecha uaLearse(03022006")
Lbl8esulLado1exL uaLearL(uaLelnLervalWeekday lecha)1oSLrlng



DateInterva|WeekCfear
CbLlene el numero de la semana del ano que puede ser enLre 1 y 33 dependlendo de la fecha
L[emplo Las slgulenLes lnsLrucclones muesLran el 18 porque la fecha uLlllzada en la funcln 01
032006 perLenece a la semana 18 del ano
ulm lecha As uaLe
lecha uaLearse(01032006")
Lbl8esulLado1exL uaLearL(uaLelnLervalWeekCfear lecha)1oSLrlng

DateInterva|ear
CbLlene el ano de la fecha
L[emplo Las slgulenLes lnsLrucclones muesLran el ano 2006
ulm lecha As uaLe
lecha uaLearse(01032006")
Lbl8esulLado1exL uaLearL(uaLelnLervalear lecha)1oSLrlng





IUNCICNLS 1IC CADLNA
Len
LsLa funcln devuelve la canLldad de caracLeres que Llene una cadena lncluyendo los espaclos en
blanco
Su slnLaxls es
Len(Cadena)
L[emplo las slgulenLes lnsLrucclones muesLra el numero 10

ulm 1exLo As SLrlng
ulm 8 As lnLeger
1exLo Pola Mundo"
8 Len(1exLo)
Lbl8esulLado1exL 8


Las varlables Llpo SLrlng Llene una propledad llamada LengLh que Lamblen devuelve la canLldad de
caracLeres que conLlene
L[emplo las slgulenLes lnsLrucclones muesLran el mlsmo resulLado



ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL 1exLoLengLh


Left
LsLa funcln devuelve una canLldad de caracLeres de una cadena empezando por la lzqulerda
ara evlLar confuslones con propledades LefL de oLros ob[eLos se debe uLlllzar su espaclo de
nombre MlcrosofLvlsual8aslcLefL or e[emplo el formularlo Llene una propledad LefL


MlcrosofLvlsual8aslc se puede uLlllzar para Lodas las funclones

La slnLaxls de la funcln LefL es
MlcrosofLvlsual8aslcLefL(Cadenan)
n es la canLldad de caracLeres que se desea obLener de la cadena
L[emplo las slgulenLes lnsLrucclones muesLra Pol
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcLefL(1exLo3)

L[emplo las slgulenLes lnsLrucclones muesLra Pola Mu
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcLefL(1exLo7)

k|ght
LsLa funcln devuelve una canLldad de caracLeres de una cadena empezando por la derecha
Su slnLaxls es
MlcrosofLvlsual8aslc8lghL(Cadenan)
n es la canLldad de caracLeres que se desea obLener de la cadena
L[emplo las slgulenLes lnsLrucclones muesLran a Mundo
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslc8lghL(1exLo7)

Las slgulenLes lnsLrucclones muesLran ndo
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslc8lghL(1exLo3)

M|d
LsLa funcln devuelve una canLldad de caracLeres de una cadena a parLlr de una deLermlnada
poslcln
Su slnLaxls es
MlcrosofLvlsual8aslcMld(Cadenan)
es la poslcln de la cadena a parLlr de la cual se desean obLener los caracLeres
n es la canLldad de caracLeres que se desea obLener de la cadena
L[emplo las slgulenLes lnsLrucclones muesLran la M

ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcMld(1exLo34)
Las varlables Llpo SLrlng Llenen un meLodo llamado SubSLrlng que obLlene el mlsmo resulLado de la
funcln Mld con la dlferencla que el prlmer elemenLo es el cero (0) Se le debe dar como
parmeLros la poslcln lnlclal y la canLldad de caracLeres L[emplo las slgulenLes lnsLrucclones
muesLran el mlsmo resulLado anLerlor
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL 1exLoSubsLrlng(24)
Ap||cac|n Desarro||ada N III04
LsLe programa permlLe lngresar el cdlgo de un alumno y mosLrar los daLos que represenLa

Ll cdlgo del alumno esL compuesLo por 10 caracLeres que represenLan
Los cuotro primeros corocteres representon e/ oo de /o motricu/o
2 / quinto corcter represento e/ semestre y puede ser 2
l / sexto y sptimo corcter represento /o especio/idod de/ o/umno y
son /os siquientes

cl computocin
c contobi/idod
ecretoriodo
1 nfermerio

4 / octovo corcter represento e/ cic/o
5 / noveno corcter represento e/ turno
/ decimo corcter represento e/ nmero de/ qrupo
Ln caso de lngresar un cdlgo que no Lenga 10 caracLeres se vlsuallza el slgulenLe mensa[e de
error

Sl algun daLo del cdlgo del alumno se lngresa en forma lncorrecLa se vlsuallza la palabra Lrror
L[emplo

ConLroles del formularlo


Los conLroles Labels que muesLran los resulLados Llenen las slgulenLes propledades



Instrucc|ones de| botn Ver
ulm Codlgo Ano Sem Lsp Clc 1ur Cru SemesLre Lspeclalldad Clclo 1urno As SLrlng
Codlgo 1xLCodlgo1exL
lf CodlgoLengLh 10 1hen
Msg8ox(Ll cdlgo es lncorrecLo" 16 uebe Lener 10 caracLeres")
1xLCodlgoClear()
LxlL Sub
Lnd lf
'Lee los daLos del cdlgo lngresado
Ano MlcrosofLvlsual8aslcLefL(Codlgo 4)
Sem CodlgoSubsLrlng(4 1)
Lsp CodlgoSubsLrlng(3 2)
Clc CodlgoSubsLrlng(7 1)
1ur CodlgoSubsLrlng(8 1)
Cru MlcrosofLvlsual8aslc8lghL(Codlgo 1)
'CbLlene el SemesLre Academlco
SelecL Case Sem
Case 1"
SemesLre l"
Case 2"
SemesLre ll"
Case Llse
SemesLre Lrror"
Lnd SelecL
'CbLlene la especlalldad
SelecL Case Lsp
Case Cl"
Lspeclalldad CompuLacln"
Case CC"
Lspeclalldad ConLabllldad"
Case L1"
Lspeclalldad Lnfermerla"
Case SL"
Lspeclalldad SecreLarlado"
Case Llse
Lspeclalldad Lrror"
Lnd SelecL
'CbLlene el Clclo
SelecL Case Clc
Case 1"
Clclo rlmero"
Case 2"
Clclo Segundo"
Case 3"
Clclo 1ercero"
Case 4"
Clclo CuarLo"
Case 3"
Clclo CulnLo"
Case 6"
Clclo SexLo"
Case Llse
Clclo Lrror"
Lnd SelecL
'CbLlene el 1urno
SelecL Case 1ur
Case M"
1urno Manana"
Case 1"
1urno 1arde"
Case n"
1urno noche"
Case Llse
1urno Lrror"
Lnd SelecL
'MuesLra los resulLados
LblAno1exL Ano
LblSemesLre1exL SemesLre
LblLspeclalldad1exL Lspeclalldad
LblClclo1exL Clclo
Lbl1urno1exL 1urno
LblCrupo1exL Cru
UCase
LsLa funcln convlerLe un LexLo a mayusculas
Su slnLaxls es
MlcrosofLvlsual8aslcuCase(Cadena)
L[emplo Las slgulenLes lnsLrucclones muesLran las palabras hola mundo en mayusculas
ulm 1exLo As SLrlng
1exLo hola mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcuCase(1exLo)

Sl no exlsLe nlnguna propledad o meLodo que se llama uCase se puede escrlblr dlrecLamenLe el
nombre de la funcln or e[emplo las slgulenLes lnsLrucclones muesLran el mlsmo resulLado
anLerlor
ulm 1exLo As SLrlng
1exLo hola mundo"
Lbl8esulLado1exL uCase(1exLo)
1amblen se puede uLlllzar el meLodo 1oupper de las varlables SLrlng
ulm 1exLo As SLrlng
1exLo hola mundo"
Lbl8esulLado1exL 1exLo1oupper
LCase
LsLa funcln convlerLe un LexLo a mlnusculas
Su slnLaxls es
MlcrosofLvlsual8aslcLCase(Cadena)
L[emplo Las slgulenLes lnsLrucclones muesLran las palabras PCLA MunuC en mlnusculas
ulm 1exLo As SLrlng
1exLo PCLA MunuC"
Lbl8esulLado1exL MlcrosofLvlsual8aslcLCase(1exLo)



1amblen se puede uLlllzar el meLodo 1oLower de las varlables SLrlng

Las slgulenLes lnsLrucclones devuelven el mlsmo resulLado anLerlor
ulm 1exLo As SLrlng
1exLo PCLA MunuC"
Lbl8esulLado1exL 1exLo1oLower
StrConv
LsLa funcln convlerLe un LexLo a caracLeres de oLra regln o mlnusculas mayusculas o slo la
prlmera leLra de cada palabra a Mayusculas
Su slnLaxls es
MlcrosofLvlsual8aslcSLrConv(Cadena 1lpo)
Ll Llpo represenLa la conversln que desea reallzar al LexLo y se pueden uLlllzar las slgulenLes
opclones

Las opclones que se pueden uLlllzar para la conflguracln de nuesLra regln son
vb5ttcoolowetcose
ConvlerLe el LexLo a mlnusculas
vb5ttcooltopetcose
ConvlerLe el LexLo a slo la prlmera leLra de cada palabra a mayusculas
vb5ttcoouppetcose
ConvlerLe el LexLo a mayusculas
Ap||cac|n Desarro||ada N III0S
LsLe programa permlLe lngresar una frase y mosLrarla en mlnusculas mayusculas y slo la prlmera
leLra de cada palabra en mayusculas



Contro|es de| Iormu|ar|o

Instrucc|ones de| botn 8tnM|nuscu|as
ulm lrase As SLrlng
lrase 1xLlrase1exL
Lbl8esulLado1exL lrase1oLower
Instrucc|ones de| botn 8tnMayuscu|as
ulm lrase As SLrlng
lrase 1xLlrase1exL
Lbl8esulLado1exL lrase1oupper
Instrucc|ones de| botn 8tn1|tu|os
ulm lrase As SLrlng
lrase 1xLlrase1exL
Lbl8esulLado1exL SLrConv(lrasevbSLrConvroperCase)
1r|m
LsLa funcln qulLa los espaclos en blanco que se encuenLran a la lzqulerda o derecha de una
cadena
Su slnLaxls es
MlcrosofLvlsual8aslc1rlm(Cadena)
L[emplo Las slgulenLes lnsLrucclones muesLran el valor 10 porque es la canLldad de caracLeres
que conLlene Al LexLo se le qulLa los espaclos en blanco que exlsLen a su lzqulerda y derecha
ulm 1exLo As SLrlng
1exLo Pola Mundo "
Lbl8esulLado1exL Len(MlcrosofLvlsual8aslc1rlm(1exLo))

Las varlables SLrlng Llenen Lamblen meLodo con el mlsmo nombre y cumple la mlsma funcln Las
slgulenLes lnsLrucclones devuelven el mlsmo resulLado anLerlor pero uLlllzando los meLodos
ulm 1exLo As SLrlng
1exLo Pola Mundo "
Lbl8esulLado1exL 1exLo1rlmLengLh
vlsual 8aslc neL Lamblen Llene las funclones L1rlm y 81rlm que slo qulLan los espaclos en blanco
que se encuenLran a la lzqulerda o derecha de una cadena
GetChar
LsLa funcln devuelve un carcLer de una cadena
Su slnLaxls es
MlcrosofLvlsual8aslcCeLChar(Cadena n)
uonde n es el numero del carcLer que se desea obLener Las
slgulenLes lnsLrucclones de e[emplo devuelven la leLra M

ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL CeLChar(1exLo 6)


InStr
LsLa funcln devuelve la poslcln lnlclal de una subcadena denLro de una cadena La subcadena se
empleza a buscar por la lzqulerda de la cadena
Su slnLaxls es
MlcrosofLvlsual8aslclnsSLr(Cadena SubCadena)
Las slgulenLes lnsLrucclones devuelven la poslcln n 3

ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL lnSLr(1exLo la")


InStrkev
LsLa funcln devuelve la poslcln lnlclal de una subcadena denLro de una cadena La subcadena se
empleza a buscar por la derecha de la cadena
Su slnLaxls es
MlcrosofLvlsual8aslclnSLr8ev(Cadena SubCadenal)
uonde l es un valor opclonal que lndlca la poslcln de la cadena a parLlr de la cual se desea reallzar
la busqueda
Las slgulenLes lnsLrucclones de e[emplo muesLra la poslcln numero 10 porque la prlmera leLra C
esL en la poslcln 10 empezando por la derecha
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslclnSLr8ev(1exLo o" )

Las slgulenLes lnsLrucclones de e[emplo muesLra la poslcln numero 2 porque la prlmera leLra C
esL en la poslcln 2 empezando por la lzqulerda ya que se usa la funcln anLerlor lnSLr
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslclnSLr(1exLo o" )
Ln las dos funclones anLerlores se puede lndlcar Lamblen en forma opclonal el Llpo de
comparacln que se desea reallzar que puede ser 8lnarla o 1exLo
kep|ace
LsLa funcln permlLe reemplazar una subcadena por oLra denLro de una cadena
Su slnLaxls es
MlcrosofLvlsual8aslc8eplace(Cadena SubCadena1 SubCadena2)
La SubCadena1 es la subcadena orlglnal y la SubCadena2 es la subcadena que conLlene el LexLo
que va a reemplazar al conLenldo de la SubCadena1
Las slgulenLes lnsLrucclones de e[emplo devuelven el LexLo Pxla Mundx
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslc8eplace(1exLo o" x")

Las slgulenLes lnsLrucclones de e[emplo devuelven el LexLo Pola_Mundo porque reemplazan los
espaclos en blanco por un gulon ba[o
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslc8eplace(1exLo " _")
Space
LsLa funcln devuelve una canLldad de espaclos en blanco
Su slnLaxls es
MlcrosofLvlsual8aslcSpace(n)
uonde n es la canLldad de espaclos en blanco que se desea devolver
L[emplo Las slgulenLes lnsLrucclones muesLran el LexLo Pola Mundo despues de 4 espaclos en
blanco
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcSpace(4) 1exLo

Las slgulenLes lnsLrucclones de e[emplo muesLran cada leLra del LexLo Pola Mundo separadas por
un espaclo en blanco

ulm 1exLo n As SLrlng
ulm l As lnLeger
1exLo Pola Mundo"
n "
lor l 1 1o 1exLoLengLh
n n CeLChar(1exLo l) Space(1)
nexL
Lbl8esulLado1exL n1rlm
Str
LsLa funcln convlerLe un valor a Llpo SLrlng
Su slnLaxls es
MlcrosofLvlsual8aslcSLr(valor)
Las slgulenLes lnsLrucclones convlerLen a Llpo SLrlng dos numeros y los concaLenan con el operador
+ devolvlendo el numero 1023 1amblen se uLlllza el meLodo 1rlm para qulLar los espaclos en
blanco
ulm A 8 As lnLeger
A 10
8 23
Lbl8esulLado1exL SLr(A)1rlm + SLr(8)1rlm

Sl uno de los valores no se convlerLe a SLrlng vlsual 8aslc neL reallza la
operacln arlLmeLlca de suma

ulm A 8 As lnLeger
A 10
8 23
Lbl8esulLado1exL A + SLr(8)1rlm


StrComp
LsLa funcln convlerLe un valor a Llpo SLrlng
Su slnLaxls es
MlcrosofLvlsual8aslcSLrComp(Cadena1Cadena21lpo)
1lpo es opclonal y se uLlllza para lndlcar el Llpo de comparacln de las cadenas que puede ser
8lnary o 1exL

Ll Llpo de comparacln 8lnary compara cada carcLer por su valor blnarlo que lo represenLa La
caracLerlsLlca prlnclpal de esLe Llpo de comparacln es que las leLras mayusculas son dlferenLes a
las mlnusculas
LsLa funcln devuelve cualqulera de los slgulenLes valores como resulLado de la comparacln
1 Sl la cadena1 es menor que la cadena2
1 Sl la cadena1 es menor que la cadena2
0 Sl las dos cadenas son lguales
Las slgulenLes lnsLrucclones de e[emplo muesLran el mensa[e Sl son lguales
ulm A 8 As SLrlng
A Pola"
8 hola"
lf SLrComp(A 8 CompareMeLhod1exL) 0 1hen
Lbl8esulLado1exL Sl son lguales"
Llse
Lbl8esulLado1exL no son lguales"
Lnd lf
Strkeverse
LsLa funcln lnvlerLe el orden de los caracLeres de una cadena
Su slnLaxls es
MlcrosofLvlsual8aslcSLr8everse(Cadena)
L[emplo Las slgulenLes lnsLrucclones muesLran las palabras Pola Mundo en el orden lnverso
ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL MlcrosofLvlsual8aslcSLr8everse(1exLo)

kemove
Ls un meLodo de las varlables SLrlng que permlLen ellmlnar una subcadena de una cadena Se le
debe lndlcar la poslcln lnlclal y la canLldad de caracLeres que se desea ellmlnar La prlmera
poslcln e cero (0)
Las slgulenLes lnsLrucclones slo muesLran Pola do

ulm 1exLo As SLrlng
1exLo Pola Mundo"
Lbl8esulLado1exL 1exLo8emove(3 3)


Asc
LsLa funcln devuelve un valor que represenLa a un carcLer que se envla como parmeLro
Su slnLaxls es
MlcrosofLvlsual8aslcAsc(CaracLer)
or e[emplo la slgulenLe lnsLruccln muesLra el numero 209 que represenLa a la leLra R
Lbl8esulLado1exL MlcrosofLvlsual8aslcAsc (R")

Chr
LsLa funcln devuelve el carcLer de un valor que se envla como parmeLro
Su slnLaxls es
MlcrosofLvlsual8aslcChr(CaracLer)
or e[emplo la slgulenLe lnsLruccln muesLra el carcLer R represenLado por el numero 209
Lbl8esulLado1exL MlcrosofLvlsual8aslcChr (209")

Ap||cac|n Desarro||ada N III06
LsLe programa permlLe lngresar un carcLer y mosLrar el valor que lo represenLa

Contro|es de| formu|ar|o

Ll conLrol 1exL8ox1 Llene en su propledad MaxLengLh el valor 1
para que slo se lngrese un carcLer

Instrucc|ones de| botn Ver
ulm C As Char
C 1exL8ox11exL
Lbl8esulLado1exL MlcrosofLvlsual8aslcAsc(C)
Ap||cac|n Desarro||ada N III07
LsLe programa permlLe lngresar el nombre edad y sexo de una persona reallzando una
conslsLencla de los daLos que se lngresan

La conslsLencla de los daLos se caracLerlza por lo slgulenLe
n e/ nombre no se ocepton nmeros
2 n /o edod s/o se ocepton nmeros
l n e/ sexo s/o se ocepton /os /etros l o M en moyscu/os o
minscu/os
Contro|es de| formu|ar|o

A los conLroles 1exL8ox le debe aslgnar un valor en su propledad MaxLengLh para llmlLar la
canLldad de caracLeres a lngresar
1xLnombre
1xLLdad
1xLSexo
La conslsLencla de los daLos se conLrola en el evenLo keyress de cada una de las ca[as de LexLo
Instrucc|ones de| evento keyress de| contro| 1xtNombre
lf Asc(ekeyChar) 48 And Asc(ekeyChar) 37 1hen
ePandled 1rue
Lnd lf
Instrucc|ones de| evento keyress de| contro| 1xt Ldad
lf (Asc(ekeyChar) 48 Cr Asc(ekeyChar) 37) And Asc(ekeyChar) 8 1hen
ePandled 1rue
Lnd lf
Instrucc|ones de| evento keyress de| contro| 1xt Sexo
lf Asc(ekeyChar) 102 And Asc(ekeyChar) 109 And Asc(ekeyChar) 70 And
Asc(ekeyChar) 77 And Asc(ekeyChar) 8 1hen
ePandled 1rue
Lnd lf
Instrucc|ones de| botn Nuevo
1xLnombreClear()
1xLLdadClear()
1xLSexoClear()
1xLnombrelocus()

IUNCICNLS NUMLkICAS
I|x
LsLa funcln devuelve slo la parLe enLera de un numero Sl el numero es negaLlvo esLa funcln
devuelve el prlmer numero enLero negaLlvo mayor o lgual que el numero
Su slnLaxls es
MlcrosofLvlsual8aslcllx(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 12
Lbl8esulLado1exL (MlcrosofLvlsual8aslcllx(126))

La slgulenLe lnsLruccln muesLra el numero 13
Lbl8esulLado1exL (MlcrosofLvlsual8aslcllx(136))

nex
LsLa funcln convlerLe un numero al slsLema hexadeclmal
Su slnLaxls es
MlcrosofLvlsual8aslcPex(numero)
L[emplo la slgulenLe lnsLruccln muesLra la leLra A
Lbl8esulLado1exL MlcrosofLvlsual8aslcPex(10)

Int
LsLa funcln devuelve slo la parLe enLera de un numero Sl el numero es negaLlvo esLa funcln
devuelve el prlmer numero enLero negaLlvo menor o lgual que el numero
Su slnLaxls es
MlcrosofLvlsual8aslclnL(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 23
Lbl8esulLado1exL MlcrosofLvlsual8aslclnL(233)

IsNumer|c
LsLa funcln permlLe saber sl un daLo es numerlco Sl el daLo es numerlco devuelve 1rue de lo
conLrarlo devuelve lalse
Su slnLaxls es
MlcrosofLvlsual8aslclsnumerlc(numero)
Las slgulenLes lnsLrucclones de e[emplo muesLran el mensa[e no es un numero
lf MlcrosofLvlsual8aslclsnumerlc(2089") 1rue 1hen
Lbl8esulLado1exL Sl es un numero"
Llse
Lbl8esulLado1exL no es un numero"
Lnd lf

Las slgulenLes lnsLrucclones muesLran el mensa[e Sl es un numero
lf MlcrosofLvlsual8aslclsnumerlc(2089") 1rue 1hen
Lbl8esulLado1exL Sl es un numero"
Llse
Lbl8esulLado1exL no es un numero"
Lnd lf

Cct
LsLa funcln convlerLe un numero al slsLema ocLal
Su slnLaxls es
MlcrosofLvlsual8aslcCcL(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 10
Lbl8esulLado1exL MlcrosofLvlsual8aslcCcL(8)

Va|
LsLa funcln convlerLe un valor a Llpo numerlco
Su slnLaxls es
MlcrosofLvlsual8aslcval(valor)
Las slgulenLes lnsLrucclones devuelven el numero 84
ulm A 8 As SLrlng
A 13"
8 69"
Lbl8esulLado1exL MlcrosofLvlsual8aslcval(A) + MlcrosofLvlsual8aslcval(8)

CLras funclones numerlcas se encuenLran en el espaclo de nombre SysLemMaLh o MaLh

L[emplo
Abs
LsLa funcln devuelve el valor absoluLo de un numero
Su slnLaxls es
SysLemMaLhAbs(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 12
Lbl8esulLado1exL SysLemMaLhAbs(12)

Ce|L|ng
LsLa funcln permlLe redondear un numero declmal al enLero mayor ms prxlmo
Su slnLaxls es
MaLhCelLlng(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 3
Lbl8esulLado1exL MaLhCelLlng(21)

I|oor
LsLa funcln permlLe redondear un numero declmal al enLero menor ms prxlmo
Su slnLaxls es
MaLhlloor(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 2
Lbl8esulLado1exL MaLhloor(21)

Max
LsLa funcln devuelve el numero mayor de dos numeros que se pasan como parmeLros
Su slnLaxls es
MaLhMax(numero1 numero2)
L[emplo la slgulenLe lnsLruccln muesLra el numero 20
Lbl8esulLado1exL MaLhMax(13 20)

M|n
LsLa funcln devuelve el numero menor de dos numeros que se pasan como parmeLros
Su slnLaxls es
MaLhMln(numero1 numero2)
L[emplo la slgulenLe lnsLruccln muesLra el numero 13
Lbl8esulLado1exL MaLhMln(13 20)

ow
esLa funcln devuelve la poLencla de un numero
Su slnLaxls es
MaLhow(numero oLencla)
L[emplo la slgulenLe lnsLruccln muesLra el numero 8
Lbl8esulLado1exL MaLhow(2 3)

kound
LsLa funcln permlLe redondear un numero Sl el valor declmal es mayor a 03 se redondea al
enLero mayor ms prxlmo
Su slnLaxls es
MaLh8ound(numero)
L[emplo la slgulenLe lnsLruccln devuelve el n 3 y la segunda el n 4
Lbl8esulLado1exL MaLh8ound(32)
Lbl8esulLado1exL MaLh8ound(36)

S|gn
LsLa funcln permlLe saber sl un numero es cero poslLlvo o negaLlvo Sl el numero es cero
devuelve 0 sl el numero es poslLlvo devuelve 1 y sl el numero es negaLlvo devuelve 1
Su slnLaxls es
MaLhSlgn(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 1
Lbl8esulLado1exL MaLhSlgn(23)

Sqrt
LsLa funcln permlLe obLener la ralz cuadrada de un numero
Su slnLaxls es
MaLhSqrL(numero)
L[emplo la slgulenLe lnsLruccln muesLra el numero 3
Lbl8esulLado1exL MaLhSqrL(23)


Ap||cac|n Desarro||ada N III078
LsLe programa permlLe lngresar un numero y mosLrar su ralz cuadrada

Contro|es de| formu|ar|o

Instrucc|ones de| botn 8tnka|z
ulm 8alz numero As uouble
numero uoublearse(1xLnumero1exL)
8alz MaLhSqrL(numero)
Lbl8esulLado1exL 8alz
Ap||cac|n Desarro||ada N III08
LsLe programa permlLe lngresar dos numeros y muesLra cual es el numero mayor y cul es el
numero menor

LsLe programa slo permlLe lngresar numeros en cada una de las ca[as de LexLo
Sl los numeros lngresados son lguales se muesLra el mensa[e en una venLana como se muesLra a
conLlnuacln

Sl alguno de los numeros no se lngresa se vlsuallza un mensa[e de adverLencla

Contro|es de| formu|ar|o
Los conLroles Labels que Llene un nombre aslgnado y donde se vlsuallzan los resulLados Llene las
slgulenLes propledades



Instrucc|ones de| evento keyress de 1xtVa|or1 y 1xtVa|or2
LsLas lnsLrucclones slo permlLen que se lngresen numeros en los dos conLroles
'Slo acepLan numeros
lf (Asc(ekeyChar) 48 Cr Asc(ekeyChar) 37) And Asc(ekeyChar) 8 1hen
ePandled 1rue
Lnd lf
Instrucc|ones de| botn 8tnkesu|tados
'regunLa sl no se ha lngresado el prlmer valor
lf 1xLvalor11exL SLrlngLmpLy 1hen
Msg8ox(lngrese el prlmer numero" Msg8oxSLyleCrlLlcal ara mosLrar los resulLados")
1xLvalor1locus()
LxlL Sub
Lnd lf
'regunLa sl no se ha lngresado el segundo valor
lf 1xLvalor21exL SLrlngLmpLy 1hen
Msg8ox(lngrese el segundo numero" Msg8oxSLyleCrlLlcal ara mosLrar los resulLados")
1xLvalor2locus()
LxlL Sub
Lnd lf
'Almacena los numeros lngresados
ulm A 8 As lnLeger
A lnLegerarse(1xLvalor11exL)
8 lnLegerarse(1xLvalor21exL)
'regunLa sl los numeros son lguales
lf A 8 1hen
LblMayor1exL "
LblMenor1exL "
Msg8ox(Los numeros son lguales" Msg8oxSLylelnformaLlon 8esulLados")
Llse
'MuesLra el numero mayor
LblMayor1exL MaLhMax(A 8)
'MuesLra el numero menor
LblMenor1exL MaLhMln(A 8)
Lnd lf
Ap||cac|n Desarro||ada N III09
LsLe programa permlLe lngresar un numero y muesLra un mensa[e sl el numero es poslLlvo
negaLlvo o cero

Sl no se lngresa un numero se muesLra un mensa[e de adverLencla

Ll mensa[e se vlsuallza en cuanLo se dlglLa el numero en la ca[a de LexLos para ello se programa en
su evenLo 1exLChanged

Contro|es de| formu|ar|o

Instrucc|ones de| evento 1extChanged de| contro| 1xtNumero
'regunLa sl se ha lngresado un numero
lf lsnumerlc(1xLnumero1exL) 1hen
ulm numero Slgno As lnLeger
'Almacena el numero lngresado
numero lnLegerarse(1xLnumero1exL)
'CbLlene el slgno del numero
Slgno MaLhSlgn(numero)
'MuesLra el mensa[e
SelecL Case Slgno
Case 1
Lbl8esulLado1exL Ll numero numero es negaLlvo"
Case 0
Lbl8esulLado1exL Ls un numero 0
Case 1
Lbl8esulLado1exL Ll numero numero es oslLlvo"
Lnd SelecL
Llse
Lbl8esulLado1exL no ha lngresado un numero"
Lnd lf
Ap||cac|n Desarro||ada N III098
LsLe programa permlLe lngresar dos numeros y muesLra el resulLado del prlmer numero elevado a
la poLencla del segundo

Contro|es de| formu|ar|o

Instrucc|ones de| botn 8tnotenc|a
ulm valor1 valor2 oLencla As lnLeger
valor1 lnLegerarse(1xLvalor11exL)
valor2 lnLegerarse(1xLvalor21exL)
oLencla MaLhow(valor1 valor2)
'MuesLra el resulLado como una cadena para que se e[ecuLe ms rpldo
Lbl8esulLado1exL oLencla1oSLrlng
Ap||cac|n Desarro||ada N III10
LsLe programa permlLe lngresar Lres numeros y muesLra el numero mayor

Sl los Lres numeros son lguales se muesLra el respecLlvo mensa[e

Contro|es de| formu|ar|o

Instrucc|ones de| botn 8tnkesu|tado
ulm A 8 C Mayor1 Mayor2 As lnLeger
'Almacena los numeros lngresados
A ConverL1olnL32(1xLvalor11exL)
8 ConverL1olnL32(1xLvalor21exL)
C ConverL1olnL32(1xLvalor31exL)
'Calcula el numero mayor
Mayor1 MaLhMax(A 8)
Mayor2 MaLhMax(Mayor1 C)
'regunLa sl los Lres numeros son lguales
lf A 8 And 8 C 1hen
Lbl8esulLado1exL Los numeros son lguales"
Llse
Lbl8esulLado1exL Ll numero mayor es Mayor2
Lnd lf
Ap||cac|n Desarro||ada N III11
LsLe programa permlLe lngresar cuaLro numeros y muesLra el numero menor

Sl los numeros son lguales Lamblen se muesLra el respecLlvo mensa[e como en el programa
anLerlor

Contro|es de| formu|ar|o

Instrucc|ones de| botn 8tnkesu|tado
'verlflca que se hayan lngresado correcLamenLe los 4 numeros
lf noL lsnumerlc(1xLvalor11exL) 1hen
Msg8ox(no ha lngresado correcLamenLe el 1er numero" Msg8oxSLyleCrlLlcal verlflque")
1xLvalor1Clear()
1xLvalor1locus()
LxlL Sub
Lnd lf
lf noL lsnumerlc(1xLvalor21exL) 1hen
Msg8ox(no ha lngresado correcLamenLe el 2do numero" Msg8oxSLyleCrlLlcal
verlflque")
1xLvalor2Clear()
1xLvalor2locus()
LxlL Sub
Lnd lf


lf noL lsnumerlc(1xLvalor31exL) 1hen
Msg8ox(no ha lngresado correcLamenLe el 3er numero" Msg8oxSLyleCrlLlcal verlflque")
1xLvalor3Clear()
1xLvalor3locus()
LxlL Sub
Lnd lf
lf noL lsnumerlc(1xLvalor41exL) 1hen
Msg8ox(no ha lngresado correcLamenLe el 4Lo numero" Msg8oxSLyleCrlLlcal verlflque")
1xLvalor4Clear()
1xLvalor4locus()
LxlL Sub
Lnd lf
'Almacena los numeros lngresados uLlllzando ConverL
ulm A 8 C u Menor1 Menor2 Menor3 As lnLeger
A ConverL1olnL32(1xLvalor11exL)
8 ConverL1olnL32(1xLvalor21exL)
C ConverL1olnL32(1xLvalor31exL)
u ConverL1olnL32(1xLvalor41exL)
'Calcula el numero menor
Menor1 MaLhMln(A 8)
Menor2 MaLhMln(Menor1 C)
Menor3 MaLhMln(Menor2 u)
'regunLa sl los cuaLro numeros son lguales
lf A 8 And 8 C And C u 1hen
Lbl8esulLado1exL Los numeros son lguales"
Llse
Lbl8esulLado1exL Ll numero menor es Menor3
Lnd lf




UTRAS FUNCIUNES
Rnu
Esta funcion peimite obtenei un nmeio al azai entie y .
Su sintaxis es: Niciosoft.visualBasic.Rnu ()
La siguiente instiuccion ue ejemplo muestia un nmeio al azai entie y en el contiol LblResultauo:
LblResultauo.text= Niciosoft.visualBasic.Rnu ()

Paia obtenei un numeio al azai entie un iango ue nmeios se uebe utilizai la siguiente foimula:
int((mximo-minimo+)*Rnu).
Bonue mximo es el numeio mayoi y minino es el nmeio menoi.
Ejemplo: la siguiente instiuccion muestia en el contiol Lbliesultauo un numeio al azai entie y .
LblResultauo.text= Int(( - +)*Rnu()+)







La funcion Ranuomize evita que la secuencia ue nmeios al azai se iepita.
Aplicacin desarrollada Nro. III-
Este piogiama consiste en un juego con nmeios que se geneian al azai utilizanuo la funcion Rnu



Al hacei un clic en el boton jugai un nmeio al azai entie y , el cual sei elnmeio jugauo y el
jugauoi uebe hacei clic en cualquieia ue los ties botones:menoi, igual, mayoi.





Estos botones muestian un nmeio al azai entie y . El jugauoi uebe aceitai con el nmeio que se
geneia y con el boton uonue hace clic.
Si el jugauoi hace clic en el boton menoi y el nmeio que se geneia es menoi que el nmeio jugauo,
entonces gana la jugaua. Lo mismo con el iesto ue botones
Ejemplo: en la siguiente jugaua el jugauoi ha hecho clic en el boton mayoi y a ganauo la jugaua poi que
el numeio que se geneio es y este es mayoi que el jugauo ().






Poi caua jugaua con el boton menoi o mayoi, el jugauoi iecibe un punto y poi caua jugaua con el boton
igual, el jugauoi obtiene ties puntos. Caua una ue las jugauas que se iealizan son contabilizauas.
En la paite infeiioi se visualiza la estauistica uel juego, es uecii, la cantiuau ue jugauas iealizauas y la
cantiuau ue puntos obteniuos poi el jugauoi.
Poi ejemplo, en la siguiente ventana se inuica que el jugauoi va iealizanuo jugauas y que ha
obteniuo 9 puntos:




Si uesea ieinicializai la estauistica uel juego, es uecii que el nmeio ue jugauas y el numeio ue puntos
obteniuos sea , pueuo hacei clic en el boton que se encuentia en la paite infeiioi ueiecha:

Al hacei clic en el boton ieinicializai, el
juego muestia la siguiente ventana.

En esta ventana se ha ieinicializauo la
estauistica ue juego, se han limpiauo los
mensajes y se han uesactivauo los botones
paia jugai. Solo se encuentia activo el boton que geneia y muestia el nmeio a jugai.










Al hacei clic en el boton jugai, este se uesactiba y se activan los botones paia iealizai la jugaua.



Caua uno ue los botones tiene asignauo un texto explicativo en su piopieuau tooltip.
Ejemplo:




Touo los botones actuan como inteligentes como poi ejemplo, cuanuo se hace clic en cualquieia ue los
botones menoi, igual o mayoi, estos se uesactivan paia que el jugauoi ya no vuelva a jugai hasta
geneiai un nuevo numeio a jugai.








Controles del formulario:


Caua uno ue los botones tiene su piopieuau image, un giafico asignaua con una aliniacion ueteiminaua,
paia lo cual se utiliza su piopieuau imageAlign.



El contiol tooltip se agiega al aplicacion paia asiganai a caua uno ue los botones un texto explicativo
en su piopieuau tooltip. Ejemplos:

















Los contioles Labels que tiene un nomnbie asiganauo uonue se visualizan los iesultauos, tiene un
tamao ue letia asignauo en su piopieuau Font y las siguientes piopieuaues:







Antes ue esciibii las instiucciones uebe ue ueclaiai ue tipo Integei y a nivel ue foimulaiio las vaiiables
puntos y jugauas, las cuales se utilizan paia llevai la estauistica uel juego.




Ranuomize()
Lblnumeio.Text = Stiing.Empty
Lbliesultauo.Text = Stiing.Empty
Lblmensaje.Text = Stiing.Empty
lblpuntos.Text = tiene puntos en jugauas
Btnmayoi.Enableu = False
Btnigual.Enableu = False
Btnmenoi.Enableu = False

Bim numeio AsByte
numeio = Int(( - + ) * Rnu() + )
Lblnumeio.Text = numeio
Lbliesultauo.Text = Stiing.Empty
Lblmensaje.Text = Stiing.Empty
Btnmayoi.Enableu = Tiue
Btnigual.Enableu = Tiue
Btnmenoi.Enableu = Tiue
Btnjugai.Enableu = False

Bim numeio, juego AsByte
jugauas +=
numeio = Int(( - + ) * Rnu() + )
Lbliesultauo.Text = numeio
juego = Byte.Paise(Lblnumeio.Text)
If numeio < juego Then
Lblmensaje.Text = gano
Lblmensaje.FoieColoi = Coloi.Reu
puntos +=
Else
Lblmensaje.Text = peiuio
Lblmensaje.FoieColoi = Coloi.Blue

EnuIf
lblpuntos.Text = tiene& puntos &puntos en& jugauas &jugauas
Btnmayoi.Enableu = False
Btnigual.Enableu = False
Btnmenoi.Enableu = False
Btnjugai.Enableu = Tiue

Bim numeio, juego AsByte
jugauas +=
numeio = Int(( - + ) * Rnu() + )
Lbliesultauo.Text = numeio
juego = Byte.Paise(Lblnumeio.Text)
If numeio = juego Then
Lblmensaje.Text = gano
Lblmensaje.FoieColoi = Coloi.Reu
puntos +=
Else
Lblmensaje.Text = peiuio
Lblmensaje.FoieColoi = Coloi.Blue
EnuIf
lblpuntos.Text = tiene& puntos &puntos en& jugauas &jugauas
Btnmayoi.Enableu = False
Btnigual.Enableu = False
Btnmenoi.Enableu = False
Btnjugai.Enableu = Tiue

Bim numeio, juego AsByte
jugauas +=
numeio = Int(( - + ) * Rnu() + )
Lbliesultauo.Text = numeio
juego = Byte.Paise(Lblnumeio.Text)
If numeio > juego Then
Lblmensaje.Text = gano
Lblmensaje.FoieColoi = Coloi.Reu
Else
Lblmensaje.Text = peiuio
Lblmensaje.FoieColoi = Coloi.Blue
EnuIf
lblpuntos.Text = tiene& puntos &puntos en& jugauas &jugauas
Btnmayoi.Enableu = False
Btnigual.Enableu = False
Btnmenoi.Enableu = False
Btnjugai.Enableu = Tiue

puntos =
jugauas =
Lblnumeio.Text = Stiing.Empty
Lbliesultauo.Text = Stiing.Empty
Lblmensaje.Text = Stiing.Empty
lblpuntos.Text = tiene& puntos &puntos en& jugauas &jugauas
Btnmayoi.Enableu = False
Btnigual.Enableu = False
Btnmenoi.Enableu = False
Btnjugai.Enableu = Tiue
Aplicacin desarrollada Nro. III-
Este programa consiste en un |uego con numeros que se generan al azar utilizando la funcion
Rnd.

En este |uego, el |ugador debe sacar numeros al azar entre y 9 y para que sea ganador, los
cuatro numerosque genra al azar deben estar ordenado en forma ascendente.
Si antes de sacar los cuatro numeros al azar se saca un numero que no esta ordenado en forma
ascendente, se muestra en mensa|e de error y se rienicia el |uego:

Por cada numero correcto que se genera al azar clic en el boton |ugar se va mostrando un
mensa|e:


Si uno de los cuatro numeros no sale ordenado
Alfabeticamente se muestra el mensa|e expli-
cativo anteriormente y se limpia todo el |ue-
go para iniaciar uno nuevo.

La siguiente ventana se visualiza cuanuo se inicia o pieiue una jugaua.

Contioles uel foimulaiio.

Los contioles Labels tienes un tamao ue la letia asignauo en su piopieuau Font y las siguientes
piopieuaues:




Instrucciones del programa
Antes de escribir las instrucciones se debe crear el siguiente procedimiento llamado Limpia.
Este procedimiento limpia el contenido de todos los controles Labels y es llamado cuando se
inicia el |uego o cuando el |ugador pierde.
Procedimiento Limpia
Sub limpia()
'Limpia touos los labels
Lblv.Text = Stiing.Empty
Lblv.Text = Stiing.Empty
Lblv.Text = Stiing.Empty
Lblv.Text = Stiing.Empty
EnuSub
Instrucciones del evento Load del formulario:
'Limpia al pioceuimiento que limpia touas los labels
call limpia()
'Evita que la secuencia ue numeios al azai se iepita en cauajugaua
Ranuomize()
Estas instiucciones se ejecutan cuanuo se inicia el juego y llaman al pioceuimiento limpia y ejecuta la
funcion Ranuomize paia la secuencia ue numeios al azai que se geneian al hacei clic en el boton }ugai
no se iepita.
Instrucciones del botn Btn)ugar:
Static jugauas AsByte
Bim a, b, numeio AsIntegei
jugauas +=
numeio = Int((9 - + ) * Rnu() + )
SelectCase jugauas
Case
Lblv.Text = numeio.ToStiing

Lblv.Text = Stiing.Empty
Lblv.Text = Stiing.Empty
Lblv.Text = Stiing.Empty

lblmensaje.Text = giacias poi jugai
Case
Lblv.Text = numeio.ToStiing
a = Integei.Paise(Lblv.Text)
b = Integei.Paise(Lblv.Text)

If Nath.Nax(a, b) Then
lblmensaje.Text = muy bien
Else
lblmensaje.Text =
NsgBox(peiuiste, NsgBoxStyle.Infoimation, sigue intentanuo)
Call limpia()
jugauas =
EnuIf
Case
Lblv.Text = numeio.ToStiing
a = Integei.Paise(Lblv.Text)
b = Integei.Paise(Lblv.Text)

If Nath.Nax(a, b) = b Then
lblmensaje.Text = muy bien, solo te falta un numeio
Else
lblmensaje.Text =
NsgBox(peiuiste, NsgBoxStyle.Infoimation, sigue intentanuo)
Call limpia()
jugauas =
EnuIf
Case
Lblv.Text = numeio.ToStiing
a = Integei.Paise(Lblv.Text)
b = Integei.Paise(Lblv.Text)

If Nath.Nax(a, b) = b Then
lblmensaje.Text = ganaste, felicitacionees
Else
lblmensaje.Text =
NsgBox(peiuiste touo el juego, NsgBoxStyle.Infoimation, sigue intentanuo)
Call limpia()
EnuIf
jugauas =
EnuSelect

sgBox
Esta funcion peitenece tambin a veisiones anteiioies ue visual Basic.Net y peimite mostiai una
ventana ue mensaje paia el usuaiio y en foima opcional espeiai una iespuesta.
Poi ejemplo, en la siguiente ventana solo se muestia un mensaje paia el usuaiio.

En la siguiente ventana se muestia un mensaje paia el usuaiio y se sepaia una iespuesta:

En la siguiente ventana tambin se muestia un mensaje paia el usuaiio y se espeia una iespuesta:


Cuanuo solo uesea enviai un mensaje al usuaiio, se utiliza la siguiente sintaxis:
NsgBox ("mensaje", valoi, "titulo")
El mensaje es el texto que se muestia en el centio ue la ventana, se pueue utilizai Ch() y Ch() paia
que ocupe vaiias lineas, el valoi es un numeio o constante que inuica los botones e iconos que van a
acompaai al mensaje, y el titulo es el texto que se muestia en la paite supeiioi ue la ventana.
En el siguiente ejemplo el mensaje ue eiioi ciitico y el titulo es veiifique.

Los iconos y botones se pueuen obtenei esciibienuo la palabia Nsgboxstyle seguiua ue un punto se
muestia a continuacion.
Nsgstyle.





Cuanuo selecciona una ue las opciones se visualiza un mensaje noimalmente ue fonuo amaiillo que
muestia el valoi ue esa constante.
En el siguiente ejemplo se ha seleccionauo Yes, No, que muestia los botones
Si y No y el mensaje inuica que sea palabia tiene valoi Nio. .
msgboxstyle.



En la siguiente muestia se ha seleccionauo Ciitical que muestia el icono ue eiioi
ciitico y el mensaje inuica que sea palabia tiene el valoi Nio. . Nsgstyle.



Ejemplo, la siguiente instiuccion:
NsgBox(El uato es incoiiecto, NsgBoxStyle.Ciitical, veiifique)
Nuestia la siguiente ventana:

El boton aceptai tiene valoi ceio (), poi lo que se visualiza sin especificailo.
La siguiente instiuccion tambin muestia la ventana anteiioi, poique el icono ue eiioi ciitico tiene el
valoi .
NsgBox(El uato es incoiiecto, , veiifique)
IC0N0S PARA LA F0NCI0N NSuB0X

Icono ue infoimacion Icono ue eiioi ciitico
icono ue exclamacion icono ue inteiiogacion
Bespus uel paimetio iconos se pueue inuicai con una constante que boton uebe mostiaise
seleccionauo. Paia ello se utiliza cualquieia ue las siguientes constantes:

La siguiente instiuccion muestia los botones si y no con el boton No seleccionauo en foima
pieueteiminaua.
Bim N AsIntegei
N = NessageBox.Show(esta seguio ue eliminai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question, NessageBoxBefaultButton.Button)

Si no se especifica este paimetio, se visualiza el mensaje con el piimei boton seleccionauo en foima
pieueteiminaua.
Bim N AsIntegei
N = NessageBox.Show(esta seguio ue eliminai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question)

Cuanuo se espeia una iespuesta uel usuaiio, la funcion messagebox uevuelve cualquieia ue las
siguientes constantes o valoies:

Caua una ue estas constantes tiene un valoi similai a la funcion msgbox, poi ejemplo, la constante yes
(si) tiene el valoi .
Las siguientes instiucciones ue ejemplo pieguntan si el usuaiio uesea finalizai el piogiama. Si el
usuaiio iesponue si, el piogiama finaliza:
Bim N AsIntegei
N = NessageBox.Show(esta seguio ue finalizai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question)
If N = Then
Close()
EnuIf

Las siguientes instiucciones cumplen la misma funcion anteiioi:
If NessageBox.Show(esta seguio ue finalizai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question) = Winuows.Foims.BialogResult.Yes Then
Close()
EnuIf
InptBox
Esta funcion peimite mostiai una ventana ue mensaje paia que el usuaiio ingiese un uato. ejemplo

Su sintaxis es la siguiente: InputBox ("Nensaje", "titulo", valoi pieueteiminauo, x, y)
El mensaje es el texto que se muestia en el centio ue la ventana, se pueue utilizai chi () y chi()
paia que ocupe vaiias lineas. El titulo es el texto que se muestia en la paite supeiioi ue la ventana.
El valoi pieueteiminauo es opcional y como su nombie lo inuica, se utiliza paia establecei un valoi que
uebe mostiai en la caja ue ingieso.
X es tambin un valoi opcional que inuica la posicion hoiizontal ue la ventana uentio ue la pantalla.
Y es tambin un valoi opcional que inuica la posicion veitical ue la ventana uentio ue la pantalla.
Ejemplo: con la siguiente instiuccion se muestia la ventana anteiioi.
InputBox(ingiese el valoi ue la 0IT, paia iealizai los calculos)
El valoi que se ingiesa en la ventana se consiueia ue tipo Stiing.
La siguiente instiuccion ue ejemplo muestia una ventana paia ingiesai la especialiuau uel alumno
.0tiliza en el mensaje vaiias lineas ue texto.
InputBox(ingiese la especialiuau uel alumno
& Chi() & Chi() &CI=computacion
& Chi() & Chi() &C0=contabiliuau
& Chi() & Chi() &AB=auministiacion, solo iniciales)



La siguiente instiuccion ue ejemplo muestia una ventana paia que el usuaiio ingiese la nota minima.
Tiene como valoi pieueteiminauos la nota y una posicion hoiizontal y veitical.


Bim nota AsStiing
nota = InputBox(ingiese la nota minima, paia los iesultauos, , , )



Aplicacin desarrollada Nro. III-

Este programa consiste en calcular al promedio de dos notas que se ingresan utilizando la
funcion inputbox.el resultado se visualiza utilizando la funcion msgbox.


Al bacer clic en el boton se piden las dos notas y se calcula el promedio como se muestra a
continuacion:




Despues de ingresar las dos notas se visualiza el promedio del alumno:



Instrucciones del boton Calcular su promedio
Bim uato AsStiing
Bim nota, nota, piomeuio AsBouble
uato = InputBox(ingiese la nota Nio , poi favoi)
nota = Bouble.Paise(uato)
uato = InputBox(ingiese la nota nio , poi favoi)
nota = Bouble.Paise(uato)
piomeuio = (nota + nota)
NsgBox(su piomeuio es:& piomeuio.ToStiing(.) &puntos, NsgBoxStyle.Infoimation,
iesultauo)
uato = InputBox(ingiese la nota Nio , poi favoi, )

paia evitai algun eiioi ue ingieso se pueue asignai como valoi pieueteiminauo ue caua nota el valoi ,
poi ejemplo:
uato = InputBox(ingiese la nota Nio , poi favoi, )

En el siguiente e|emplo se ba modificado las instrucciones del botn calcular su promedio para
que si no se ingresa algu8na de las notas o se bace clic en el botn cancelar, se le asigne el valor
.

Bim uato AsStiing
Bim nota, nota, piomeuio AsBouble
uato = InputBox(ingiese la nota nio , poi favoi, )
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
nota =
EnuIf
uato = InputBox(ingiese la nota nio , poi favoi, )
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
nota =
EnuIf
piomeuio = (nota + nota)
NsgBox(su piomeuio es:& piomeuio.ToStiing(.) &puntos, NsgBoxStyle.Infoimation,
iesultauo)
Si no se ingiesan las notas o se hace clic en el boton cancelai se visualiza el siguiente iesulatuo.

A pesar de los cambios realizados a las instrucciones inciales del botn calcular su promedio, el
programa se detendr y se producir en error, por e|emplo, si en lugar de ingresar un numero,
el usuario ingresa una letra.
En el siguiente e|emplo se visualiza el programa detenido porque el usuario ba ingresado una
letra en lugar de una nota:

Cuando el programa se detiene en forma inesperada por algn error producido se le llama
excepcin. A continuacin se explica cmo controlarla:

CUNTRUL DE EXCEPCIUNES
0na excepcion es un eiioi inespeiauo que pueue ocuiiii uuiante la ejecucion ue un piogiama, lo que
geneia que la ejecucion se uetenga o funciones en foima incoiiecta.
El contiol ue excepciones en toua aplicacion es muy impoitante, poique peimite biinuai infoimacion
auecuaua al usuaiio ue la aplicacion sobie el pioblema uetectauo, sin necesiuau que se inteiiumpa su
ejecucion y peimitienuo que se coiiija el pioblema.
En visual basic .Net existe la clase exception que peimite contiolai las excepciones uentio ue una
aplicacion.
Paia empezai a contiolai las excepciones uebe uefinii una vaiiable con esta clase. Poi ejemplo:
Bim Ex As Exception
La vaiiable que se uefine con la clase exception tenui toua la infoimacion ue la excepcion o eiioi que
se piouuce. Poi ejemplo: ex.





Cuanuo ocuiie una excepcion uentio ue un piogiama y no se contiola la ejecucion uel piogiama, se
uetiene y se visualiza una ventana similai a la siguiente, uepenuienuo uel tipo ue excepcion:

Si hace clic en vei uetalle, se visualiza el uetalle ue la excepcion:


Try catcb
Esta instiuccion peimite contiolai las excepciones o eiioies inespeiauos que pueuen ocuiiii en visual
basic .net
Su sintaxis es la siguiente: tiy
Bloque ue instiucciones Nio.
Catch vaiiable as excepcion Nio.
Finally
Bloque ue instiucciones nio.
Enu tiy
Bloque de Instrucciones Nro.
Es el bloque ue instiucciones que ueseamos contiolai, es uecii, el bloque ue instiucciones ue nuestia
aplicacion uonue pueue ocuiiii la excepcion o eiioi. Poi ejemplo, en este bloque ue instiucciones
pueue ii el mtouo open, poique ocuiiii un eiioi al abiii la conexion a SQL Seivei, poique no existe el
seiviuoi, el nombie uel usuaiio o su contiasea son incoiiectos, hemos asignauo un valoi incoiiecto en
la cauena ue conexion, etc.
Bloque de Instrucciones Nro.
Es el bloque ue instiucciones que se uebe ejecutai cuanuo ocuiia una excepcion uuiante la ejecucion ue
la aplicacion.
En este bloque ue instiucciones uebemos ieconocei las excepcion o el eiioi piouuciuo paia enviai un
mensaje auecuauo al usuaiio y evitai que nuestia aplicacion ueje ue funcionai.
En la paite inicial ue este bloque ue instiucciones y uespus ue la palabia catch, se uebe uefinii una
vaiiable ue tipo excepcion piouuciua. La vaiiable tambin se pueue uefinii al inicio uel piogiama.
Bloque de Instrucciones Nro.
Bloque ue Instiucciones es opcional y si se esciiben, se ejecutan siempie, es uecii, si se piouuce o no la
excepcion.
Si en una paite uel bloque tiy catch uesea salii ue l, pueue utilizai exit tiy.
Exit tiy es una palabia clave que peimite salii uel bloque tiy catch y ejecutai la instiuccion o
instiucciones que se encuentian uespus ue enu tiy.
La palabia clave exit no se pueue utilizai uel bloque ue instiucciones Nio. , es uecii, uespus ue la
palabia finally.
Las siguientes instiucciones son las mismas uel piogiama anteiioi, peio, contiolanuo excepciones.
Bim uato AsStiing
Bim nota, nota, piomeuio AsBouble
Tiy
'ingiesa la piimeia nota
uato = InputBox(ingiese la nota nio , poi favoi, )
'Piegunta si esta nula o vacia
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
'Si esta vacia se le asigna el
nota =
EnuIf
'ingiesa piimeia nota
uato = InputBox(ingiese la nota nio , poi favoi, )
'Piegunta si esta nula o vacia
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
nota =
EnuIf
'Calcula el piomeuio
piomeuio = (nota + nota)
'muestia el piomeuio
NsgBox(su piomeuio es:& piomeuio.ToStiing(.) &puntos, NsgBoxStyle.Infoimation,
iesultauo)
Catch ex As Exception
NsgBox(ex.Nessage, NsgBoxStyle.Ciitical, ex.Souice)
EnuTiy
EnuSub

En estas instiucciones ue ejemplo no se utiliza finally y se muesia el mensaje uel eiioi piouuciuo
(message) y su oiigen (souice).poi ejemplo, con estas instiucciones, si el usuaiio esciibe letias en lugai
ue una nota:

Ya no se inteiiumpe la ejecucion uel piogiama, solo se muestia una ventana ue mensaje:

Al hacei clic en el boton Aceptai el piogiama peimanece activo:


Las siguientes instiucciones son las mismas uel piogiama anteiioi. Aqui se uefine piimeio la vaiiable
ex ue tipo excepcion y se usa el bloque Finally.


Bim ex As excepcion
Bim uato AsStiing
Bim nota, nota, piomeuio AsBouble
Tiy
'ingiesa la piimeia nota
uato = InputBox(ingiese la nota nio , poi favoi, )
'Piegunta si esta nula o vacia
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
'Si esta vacia se le asigna el
nota =
EnuIf
'ingiesa piimeia nota
uato = InputBox(ingiese la nota nio , poi favoi, )
'Piegunta si esta nula o vacia
IfStiing.IsNull0iEmpty(uato) = FalseThen
nota = Bouble.Paise(uato)
Else
nota =
EnuIf
'Calcula el piomeuio
piomeuio = (nota + nota)
'muestia el piomeuio
NsgBox(su piomeuio es:& piomeuio.ToStiing(.) &puntos, NsgBoxStyle.Infoimation,
iesultauo)
Catch ex As Exception
NsgBox(ex.Nessage, NsgBoxStyle.Ciitical, ex.Souice)
Finally
'muestia el piomeuio
Nsgbox("su piomeuioes:"&
Piomeuio.tostiing(".")&"Puntos",msgbostyle.Infoimation,"iesultauo")
EnuTiy
EnuSub
Con las instiucciones anteiioies si el usuaiio esciibe letias en lugai ue una nota:

Tampoco se inteiiumpe la ejecucion uel piogiama, solo se muestia una ventana ue mensaje.


Al hacei clic en el boton se muestia el piomeuio uel alumno con . puntos poi las instiucciones uel
bloque Finally.

Aplicacin Desarrollada Nro. III--B
Este piogiama peimite ingiesai el nombie y ties notas ue un alumno meuiante la funcion inputbox y
mostiai su piomeuio.

El nombie uel alumno es obligatoiio ingiesai y el piogiama mostiaia la siguiente ventana hasta que se
ingiese.

Las notas ueben estai entie y , y el piogiama mostiaia la siguiente ventana hasta que se ingiese la
nota coiiecta.

En este piogiama tambin se contiolan las excepciones, poi ejemplo:

Instrucciones del botn ingresar:
Bim nombie, nota AsStiing
Bim I AsByte
Bim piomeuio AsBouble
Static puntos AsBouble
Tiy
'Piue el nombie hasta que nno sea una cauena vacia
Bo
nombie = InputBox(ingiese el nombie uel alumno, poi favoi)
Loop0ntil nombie <>Stiing.Empty
Foi I = To
'Piue la nota hasta que sea mayoi o igual a y menoi a
Bo
nota = InputBox(ingiese la nota Nio& I.ToStiing(), entie y , )

Loop0ntilBouble.Paise(nota) >= AnuBouble.Paise(nota) <=

puntos = puntos + Bouble.Paise(nota)
Next I
piomeuio = puntos

lbliesultauo.Text = el piomeuio ue:& nombie &es:& piomeuio.ToStiing(.)

Catch ex As Exception
NessageBox.Show(ex.Nessage,ex.Souice,essageBoxButtons.0K, NessageBoxIcon.Eiioi)
Finally
Reinicianuo los puntos uel alumno
puntos =
EnuTiy
Aplicacin Desarrollada Nro. III-
Este piogiama es similai al piogiama III-, peio, aqui se iealiza el contiol ue excepciones y otias
caiacteiisticas mas.

Si ocurre algun error inesperado,el programa no se detiene, solo muestra un mensa|e que indica
error.E|emplo:


Despues de controlar la excepcion o de mostrar los resultados correctos, el programa pregunta
sidesea continuar:

Instrucciones del boton dias:
Bim fecha, nuevafecha AsBate
Bim tiempo AsIntegei
Tiy
fecha = Bate.Paise(Txtfecha.Text)
tiempo = Integei.Paise(txttiempo.text)
nuevafecha = BateAuu(BateInteival.Bay, tiempo, fecha)
Lblnuevafecha.Text = la nueva fecha es :& nuevafecha
Catch ex As Exception
NessageBox.Show(ex.InneiException, ex.Souice, NessageBoxButtons.0K, NessageBoxIcon.Eiioi)
Finally
If NessageBox.Show(uesea continuai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question) = Winuows.Foims.BialogResult.Yes Then
Txtfecha.Cleai()
txttiempo.cleai()
lblnuevafecha.text = Stiing.Empty
Txtfecha.Focus()
Else
Close()
EnuIf
EnuTiy

Instiucciones uel boton Semanas:

Bim fecha, nuevafecha AsBate
Bim tiempo AsIntegei
Tiy
fecha = Bate.Paise(Txtfecha.Text)
tiempo = Integei.Paise(Txttiempo.Text)
nuevafecha = BateAuu(BateInteival.Week0fYeai, tiempo, fecha)
Lblnuevafecha.Text = la nueva fecha es :& nuevafecha
Catch ex As Exception
NessageBox.Show(ex.InneiException, ex.Souice, NessageBoxButtons.0K, NessageBoxIcon.Eiioi)
Finally
If NessageBox.Show(uesea continuai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question) = Winuows.Foims.BialogResult.Yes Then
Txtfecha.Cleai()
Txttiempo.Cleai()
Lblnuevafecha.Text = Stiing.Empty
Txtfecha.Focus()
Else
Close()
EnuIf
EnuTiy


Instrucciones del boton eses:
Bim fecha, nuevafecha AsBate
Bim tiempo AsIntegei
Tiy
fecha = Bate.Paise(Txtfecha.Text)
tiempo = Integei.Paise(Txttiempo.Text)
nuevafecha = BateAuu(BateInteival.Nonth, tiempo, fecha)
Lblnuevafecha.Text = la nueva fecha es :& nuevafecha
Catch ex As Exception
NessageBox.Show(ex.InneiException, ex.Souice, NessageBoxButtons.0K, NessageBoxIcon.Eiioi)
Finally
If NessageBox.Show(uesea continuai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question) = Winuows.Foims.BialogResult.Yes Then
Txtfecha.Cleai()
Txttiempo.Cleai()
Lblnuevafecha.Text = Stiing.Empty
Txtfecha.Focus()
Else
Close()
EnuIf
EnuTiy
Instiucciones uel boton Ao:
Bim fecha, nuevafecha AsBate
Bim tiempo AsIntegei
Tiy
fecha = Bate.Paise(Txtfecha.Text)
tiempo = Integei.Paise(Txttiempo.Text)
nuevafecha = BateAuu(BateInteival.Yeai, tiempo, fecha)
Lblnuevafecha.Text = la nueva fecha es :& nuevafecha
Catch ex As Exception
NessageBox.Show(ex.InneiException, ex.Souice, NessageBoxButtons.0K, NessageBoxIcon.Eiioi)
Finally
If NessageBox.Show(uesea continuai, confiime, NessageBoxButtons.YesNo,
NessageBoxIcon.Question) = Winuows.Foims.BialogResult.Yes Then
Txtfecha.Cleai()
Txttiempo.Cleai()
Lblnuevafecha.Text = Stiing.Empty
Txtfecha.Focus()
Else
Close()
EnuIf
EnuTiy

CAPITULU

UTRUS CUNTRULES DE VISUAL BASIC .NET 8
CUNTENIDU
En este capitulo, usteu apienuei a utilizai otio contioles que
ofiece visual Basic .NET.
Fl Control NumerlcUpown
Fl Control utu1lmePlcker
Fl Control MonthCulenJur
Fl Control 1lmer
Fl Control ComboBox
Fl Control IlxtBox
Fl Control CheckBox
Fl Control RuJloButton
Mucho Mdx



El Control NumericUpDown

Este contiol peimite ingiesai uatos numiicos en una aplicacion. El ingieso pueue sei
uigitanuo el numeio o pulsanuo la flecha hacia aiiiba o hacia abajo paia inciementai o
uisminuii hasta encontiai el numeio ueseauo.

Sus piincipales piopieuaues son:


DecimalPlaces
Esta piopieuau peimite inuicai la cantiuau ue uecimales que uebe aceptai el valoi numiico
que se ingiesa o selecciona en el contiol. En la siguiente ventana ue ejemplo, el contiol se ha
configuiauo paia uecimales:







Hexadecimal
Esta piopieuau peimite inuicai si el contiol uebe mostiai el valoi en Bexauecimal. En la
siguiente ventana ue ejemplo esta piopieuau tiene valoi Tiue y muestia el nmeio en
hexauecimal.

Increment
Esta piopieuau peimite inuicai el valoi que se uebe inciementai o uisminuii caua vez que se
pulse la flecha hacia aiiiba o hacia abajo. En foima pieueteiminaua es . El inciemento
tambin pueue sei en uecimales, poi ejemplo ..

aximun
Esta piopieuau se utiliza paia inuicai el valoi mximo al que se pueue inciementai este
contiol o el valoi mximo que se pueua ingiesai. Si se ingiesa un valoi mayoi que el mximo
estableciuo, el contiol mostiai el valoi mximo al ubicai el cuisoi en otio contiol.

nimum
Esta piopieuau se utiliza paia inuicai el valoi minimo al que se pueue uisminuii este contiol o
el valoi minimo que se pueua ingiesai. Si se ingiesa un valoi minimo que el mximo
estableciuo, el contiol mostiai el valoi minimo al ubicai el cuisoi en otio contiol.

ReadUnly
Esta piopieuau se utiliza paia inuicai el usuaiio pueue inuicai el valoi en el contiol. Si esta
piopieuau tiene valoi Tiue, el usuaiio solo poui hacei clic en la flecha hacia aiiiba o hacia
abajo paia inciementai o uisminuii el valoi.

TextAligm
Esta piopieuau peimite alineai el valoi uentio uel contiol y pueue sei hacia la izquieiua,
ueiecha o centio.




TbousandsSeparator
Esta piopieuau peimite inuicai si el valoi ue este contiol se uebe mostiai con el sepaiauos
ue miles. En el siguiente ejemplo esta piopieuau tiene valoi Tiue:



UpDownAlign
Esta piopieuau peimite inuicai la ubicacion ue la flecha uel contiol que pueue sei a la ueiecha
o izquieiua como se muestia a continuacion.



Value
Esta piopieuau almacena el valoi que se uigita o se selecciona en el contiol.



Aplicacin Desarrollada N IV-

Este piogiama peimite ingiesai o seleccionai en un contiol Numeiic0pBown la euau ue una
peisona y mostiai el ao que nacio.

Paia uesaiiollai esta aplicacion uebe uibujai un contiol Numeiic0pBown llamauo NuuEuau y
con un contiol Label llamauo LblNensaje.


La euau solo se peimite entie 8 y 99 aos, paia lo cual el contiol Numeiic0pBown se le uebe
asignai las siguientes piopieuaues.



El contiol LblNensaje uebe tenei las siguientes piopieuaues:




Instrucciones del evento ValueCbanged del control NumericUpDown
Estas instiucciones muestian el ao ue nacimiento cuanuo el usuaiio esciibe la euau ue la
peisona hace clic en la flecha.
'Beclaiamos la vaiiable euau ue tipo numeio
Bim euau As Byte
Beclaiamos las vaiiable ao, ue tipo enteio
Bim ao As Integei
'Bigitamos la euau
euau = nuueuau.value
'Resta el ao uel sistema menos la euau
ao = Yeai(Touay()) - euau
'Nuestia el ao obteniuo en el contiol LabelNensaje
lblmensaje.Text = 0steu Nacio en el Ao: & ao

Si el usuaiio uigita un numeio mayoi que el mximo (99), este valoi mximo se muestia el
contiol, al pulsai la tecla Entei o enfocai a otio contiol. Ejemplo:




El control DateTimePicker

Este contiol peimite ingiesai fecha en una aplicacion. El ingieso se iealiza meuiante un
calenuaiio que muestia el contiol.


Sus piincipales piopieuaues son:

Cbecked
Esta piopieuau tiabaja junto con la piopieuau ShowSelectBox y peimite inuicai si el usuaiio
ha seleccionauo la fecha o no.

SbowSelectBox
Esta piopieuau peimite inuicai si el contiol uebe tenei una casilla ue veiificacion.

La siguiente figuia muestia el contiol con el valoi Tiue en las uos piopieuaues anteiioies:


CustomFormat
Esta piopieuau peimite establecei el foimato en el cual se uebe visualizai la fecha yu hoia en
el contiol cuanuo se le ha asignauo el valoi Custom en la piopieuau Foimat.

Format
Esta piopieuau peimite seleccionai el foimato en el cual se uebe visualizai la fecha y u hoia
en el contiol. Si se selecciona Custom la fecha se mostiaia en el foimato estableciuo en la
piopieuau CustomFoimat.

Los foimatos son:

Long

Shoit

Time

0n ejemplo ue foimato que pueue establecei en la piopieuau CustomFoimat es (las letias N
estn en maysculas):

Si se selecciona el foimato Custom en la piopieuau Foimat, el iesultauo sei el siguiente:

DropDownAlign
Esta piopieuau peimite inuicai la posicion izquieiua o ueiecha uel calenuaiio cuanuo se
muestia en el foimulaiio.






axDate
Esta piopieuau peimite establecei la fecha mxima que se pueue seleccionai en el calenuaiio.
En foima pieueteiminaua la fecha mxima es: 9998.

ixDate
Esta piopieuau peimite establecei la feche minima que se pueue seleccionai en el calenuaiio.
En foima pieueteiminaua la fecha minima es: .

SbowUpDown
Esta piopieuau peimite inuicai si uebe mostiai las flechas hacia aiiiba y hacia abajo en el
contiol. Ejemplo:

Value
Esta piopieuau almacena la fecha yu hoia seleccionaua en el contiol.




Aplicacin Desarrollada N IV-

Este piogiama peimite ingiesai el nombie ue un cliente, el monto ue su ueuua, la fecha ue
vencimiento y la fecha ue pago.



El piogiama uebe calculai y mostiai los uias ue moia, la moia en poicentaje, la moia en soles
y el monto total que uebe pagai el cliente. la oia en poicentaje es .% uiaiio.

Como se uebe obseivai en el foimulaiio ue ejemplo, si el cliente paga antes o el mismo uia ue
la fecha ue vencimiento, la moia es ceio.


Controles del formulario.



El contiol TxtCliente se le uebe asignai el valoi en su piopieuau NaxLength paia que solo
acepte hasta esa cantiuau ue caiacteies en el nombie uel cliente.

El contiol NuuNonto uebe tenei las siguientes piopieuaues:




Los uos contioles BateTimePickei ueben tenei en su piopieuau Foimat la opcion Shoit

Los contioles Label ueben tenei las siguientes piopieuaues:



Si no se ingiesa el nombie uel cliente o el monto a pagai, visualiza un mensaje ue aviso:




Instrucciones del evento Load del formulario

Estas instiucciones muestian la fecha uel sistema en la fecha ue vencimiento y en la fecha ue
pago.

'Asigna la fecha actual del sistema
DtpVencimiento.Value = Today()
'Asigna la fecha actual del sistema
DtpPago.Value = Today()
DtpPago.Value = Today()
Instrucciones del botn Nuevo
Estas instiucciones limpian los uatos ingiesauos y los iesultauos obteniuos paia ingiesai la
infoimacion ue otio cliente, auems muestia la fecha uel sistema en la veha ue vencimiento y
en la fecha ue pago

'Limpia los controles
TxtCliente.Clear()
NudMonto.Value = 0
DtpVencimiento.Value = Today()
DtpPago.Value = Today()
LblDMora.Text = ""
LblPMora.Text = ""
LblSMora.Text = ""
LblMPagar.Text = ""
'Ubica el cursor en la caja de texto Clientes
TxtCliente.Focus()

Instrucciones del botn finalizar
'Finaliza la aplicacion
Close ()


Instrucciones del botn Calcular:
Beclaiamos las vaiiables ue tipo Numeio
Bim monto, moiapoicentaje, moiasoles, pago As Single
Beclaiamos las vaiiables uel tipo Enteio
Bim uiasmoia As Integei
Beclaiamos la vaiiables ue tipo Fecha
Bim fvencimiento, fpago As Bate
veiifuca que se haya ingiesauo el nombie uel cliente
If txtcliente.Text.Tiim = Then
Nuestia un mensaje piuienuo que se ingiese el Nombie uel Cliente
NsgBox(Ingiese el nombie uel cliente, NsgBoxStyle.Ciitical, Poi Favoi)
Posiciona el cuisoi en la caja ue texto Cliente
txtcliente.Focus()
Finaliza la subiiutina
Exit Sub
Finaliza la conuicion
Enu If

veiifica que se haya ingiesauo el monto apagai
If nuumonto.value <= Then
Nuestia un mensaje piuienuo que ingiese el mosto a pagai
NsgBox(Ingiese el monto a pagai, NsgBoxStyle.Ciitical, Poi Favoi)
Posiciona el cuisoi en la caja ue texto monto
nuumonto.Focus()
Finaliza la subiiutina
Exit Sub
Finaliza la conuicion
Enu If
Almacena el valoi uel monto
Nonto = Nuumonto.value
Almacena la fecha
Fvencimiento = Btpvencimiento.value
Fpago = utppago.value
Calcula la uifeiencia ue uias entie el las fechas
uiasmoia = BateBiff(BateInteival.Bay, fvencimiento, fpago)
Piegunta si hay uias ue moia, entonces
If uiasmoia < Then
Asigna el valoi ceio a BiasNoia
Biasmoia =
Finaliza la conuicion
Enu If

Calcula la NoiaPoicentaje
Noiapoicentaje = uiasmoia * .
'Calcula la NoiaSoles
Noiasoles = Nonto * Noiapoicentaje
Calcula la Pago
Pago = Nonto + Noiasoles
Nuestia los uias moia
lbluiasmoia.Text = uiasmoia
Calcula el Piomeuio Noia
lblmoiapoi.Text = moiapoicentaje.ToStiing(.)
Calcula los soles ue moia
lblmoiasoles.Text = moiasoles.ToStiing(,.)
Calcula el monto a pagai
lblpago.Text = pago.ToStiing(,.)




Aplicacin Desarrollada NIV - B

Este piogiama peimite ingiesai una fecha y mostiai poi sepaiauo el uia, mes y ao ue la
fecha, asi como la fecha uias antes y uias uespus.


















Los controles del formulario son:


Los contioles Label, uonue se muestian los iesultauos ueben tenei las siguientes piopieuaues:





Instrucciones del evento Load del formulario:

Instrucciones del botn BtnVer:

Beclaiamos las vaiiables ue tipo Fecha
Bim fecha, antes, uespues As Bate
Beclaiamos las vaiiables ue tipo enteio
Bim uia, mes, ao As Integei
Almacena la fecha
fecha = utpfecha.value
0btiene el uia ue la fecha
uia = fecha.Bay
0btiene el mes ue la fecha
mes = fecha.Nonth
0btiene el ao ue la fecha
ao = fecha.Yeai
Calcula el inteivalo que hay uias antes
antes = BateAuu(BateInteival.Bay, -, fecha)
Calcula el inteivalo que hay uias uespues
uespues = BateAuu(BateInteival.Bay, , fecha)

Nuestia el iesultauo LblBia ue tipo cauena
lbluia.Text = uia.ToStiing
Nuestia el iesultauo LblNes ue tipo cauena
lblmes.Text = mes.ToStiing
Nuestia el iesultauo LblAo ue tipo cauena
lblao.Text = ao.ToStiing
Nuestia el iesultauo LblAntes ue tipo cauena
lblantes.Text = antes.ToStiing(uu-NN-yy)
Nuestia el iesultauo LblBespues ue tipo cauena
lbluespues.Text = uespues.ToStiing(uu-NN-yy)





Aplicacin Desarrollada N IV - C

Este piogiama peimite seleccionai uos fechas y mostiai su uifeiencia en uias, semanas,
meses y aos.


Controles del formulario



Instrucciones del evento Load del formulario

Estas instiucciones asignan la fecha actual a los uos contioles BateTimePickei.

Asigna la fecha actual
BtpFInicial.value = Touay()
Asigna la fecha actual
BtpFFinal.value = Touay()

Instrucciones del botn BtnDias:
Beclaiamos las vaiiables ue tipo fecha
Bim fecha, fecha As Bate
Beclaiamos las vaiiables ue tipo enteio
Bim tiempo As Integei
Almacena el valoi ue la Fecha
fecha = utpinicial.value
Almacena el valoi ue la Fecha
fecha = utpfinal.value
Calcula la uifeiencia ue uias entie el las fechas
tiempo = BateBiff(BateInteival.Bay, fecha, fecha)
'Nuestia el iesultauo obteniuo ue la uifeiencia
lbltiempo.Text=Son& tiempo & uias ue Bifeiencia

Instrucciones del botn BtnSemanas:
Beclaiamos las vaiiables ue tipo fecha
Bim fecha, fecha As Bate
Beclaiamos las vaiiables ue tipo enteio
Bim tiempo As Integei
Almacena el valoi ue la Fecha
fecha = utpinicial.value
Almacena el valoi ue la Fecha
fecha = utpfinal.value
Calcula la uifeiencia ue uias entie el las fechas
tiempo = BateBiff(BateInteival.Weekuay, fecha, fecha)
'Nuestia el iesultauo obteniuo ue la uifeiencia
lbltiempo.Text=Son& tiempo & semanas ue Bifeiencia

Instrucciones del botn Btneses:
Beclaiamos las vaiiables ue tipo fecha
Bim fecha, fecha As Bate
Beclaiamos las vaiiables ue tipo enteio
Bim tiempo As Integei
Almacena el valoi ue la Fecha
fecha = utpinicial.value
Almacena el valoi ue la Fecha
fecha = utpfinal.value
Calcula la uifeiencia ue uias entie el las fechas
tiempo = BateBiff(BateInteival.Nonth, fecha, fecha)
'Nuestia el iesultauo obteniuo ue la uifeiencia
lbltiempo.Text = Son & tiempo & meses ue Bifeiencia

Instrucciones del botn BtnAos:
Beclaiamos las vaiiables ue tipo fecha
Bim fecha, fecha As Bate
Beclaiamos las vaiiables ue tipo enteio
Bim tiempo As Intege
Almacena el valoi ue la Fecha
fecha = utpinicial.value
Almacena el valoi ue la Fecha
fecha = utpfinal.value

Calcula la uifeiencia ue uias entie el las fechas

tiempo = BateBiff(BateInteival.Yeai, fecha, fecha)
'Nuestia el iesultauo obteniuo ue la uifeiencia
lbltiempo.Text = Son & tiempo & aos ue Bifeiencia



El control ontbCalendar

Este contiol peimite mostiai en un foimulaiio un calenuaiio, peio, solo son algunos meses
ueteiminauos. Tambin se pueue utilizai paia seleccionai e ingiesai una fecha a una
aplicacion.




Paia seleccionai un nuevo mes, pueue hacei clic en la flecha hacia la
ueiecha o izquieiua que se encuentia en le titulo uel calenuaiio.
Tambin se pueue hacei clic en el nombie uel mes, con lo cual se
visualizan touos los meses uel ao.

Paia seleccionai un nuevo ao, pueue hacei clic en el ao que se
encuentia en el titulo uel calenuaiio con lo cual se muestia un contiol
0pBown junto al ao paia cambiailo.


En la siguiente ventana ue ejemplo se ha hecho clic en el nombie uel mes:


Si se encuentia en cualquiei fecha y uesea ii a la fecha actual, pueue hacei clic en la casilla que
uice Boy:




Sus piincipales activiuaues son:

AnnuallyBoldedDates


Esta piopieuau se utiliza paia inuicai las fechas ue cualquiei ao que uesea visualizai en
Negiita cuanuo visualice el calenuaiio.


El ingiesai a esta piopieuau, se visualiza la siguiente ventana:


En esta ventana haga clic en el boton Agiegai y esciiba o selecciones en la piopieuau value la
fecha que uesea visualizai en negiita:
En la siguiente ventana ue ejemplo se ha agiegauo fechas uel ao 9 paia que se
visualicen en negiita:








BoldedDates
Esta piopieuau es similai a la piopieuau anteiioi, se uifeiencian poique las fechas que aqui
se seleccionan solo se muestian en negiita en el ao seleccionauo, paia paia que otios aos se
visualicen en coloi noimal.


Al ingiesai a esta piopieuau se visualiza la misma ventana ue la piopieuau anteiioi uonue se
agiegan las fechas que uesean visualizai en negiita, peio solo en el ao seleccionauo.

CalendarDimensiones
Esta piopieuau se utiliza paia inuicai la cantiuau ue meses que uesea mostiai en el
foimulaiio. Esta piopieuau acepta uos valoies sepaiauos poi un punto y coma. El piimei valoi
inuica cantiuau ue columnas y el segunuo, cantiuau ue filas. En la siguiente ventana ue
ejemplo se ha inuicauo uos columnas y una fila:


FirstDayUfWeek
Esta piopieuau se utiliza paia establecei el piimei uia ue la semana. En foima
pieueteiminaua es Sunuay (Bomingo).



En la siguiente ventana ue ejemplo se ha estableciuo como piimei uia ue la semana el uia
Nonuay (lunes):


axDate
Esta piopieuau peimite establecei la fecha mxima que se pueua seleccionai en el calenuaiio.
En foima pieueteiminaua la fecha mxima es: 9998.

axSelectionCount
Esta piopieuau peimite establecei la cantiuau ue uias que pueuan seleccionai en el
calenuaiio. Los uias se pueuen seleccionai utilizanuo las teclas Shift y las flechas o con el
punteio uel mouse. En foima pieueteiminaua solo se pueuen seleccionai uias.

ixDate
Esta piopieuau peimite establecei la fecha minima que se pueue seleccionai en el calenuaiio.
En foima pieueteiminaua la fecha minima es: .

ontblyBoldedDates
Esta piopieuau peimite establecei los uias uel mes que ueben salii. Poi ejemplo, si usteu
agiega el uia ue febieio, entonces el uia ue touos los meses se visualizan en negiita.

Al ingiesai a esta piopieuau se visualiza la misma ventana ue la piopieuau BolueuBates
uonue uebe agiegai los uias que uesean visualizai en negiita en touos los meses uel ao.




ScrollCbange
Esta piopieuau peimite establecei la cantiuau ue meses que se uesean saltai cuanuo el
usuaiio hace clic en la fecha hacia la ueiecha o izquieiua uel calenuaiio.

SelectionRange
Esta piopieuau almacena el iango ue fechas seleccionanuo con el contiol. Las fechas se
sepaian poi un punto y coma.
En el siguiente ejemplo se ha seleccionauo las fechas entie el --y el --. La
fecha inicial se almacena en Stait y la fecha final se almacena en Enu. Paia visualizai esta
infoimacion haga clic en el signo + ue esta piopieuau.


SbowToday
Esta piopieuau se utiliza paia inuicai si en la paite infeiioi uel calenuaiio se uebe visualizai la
fecha actual. En foima pieueteiminaua tiene el valoi Tiue. En la siguiente ventana se le ha
asignauo el valoi False:



SbowTodayCircle
Esta piopieuau se utiliza paia inuicai si en la paite infeiioi uel calenuaiio se uebe visualizai
en la fecha actual (Boy) un iectngulo ue coloi iojo.

SbowWeekNumbers
Esta piopieuau se utiliza paia inuicai si las semanas uel calenuaiio se ueben visualizai
enumeiauas. En la ventana ue ejemplo se le ha asignauo Tiue.



TitleBackColor
Esta piopieuau se utiliza paia establecei el coloi ue fonuo uel titulo uel calenuaiio.

TitleForeColor
Esta piopieuau se utiliza paia establecei el coloi ue las letias uel titulo uel calenuaiio.


TrailingForeColor
Esta piopieuau se utiliza paia establecei el coloi ue los numeio ue los uias que peitenecen al
mes anteiioies y siguiente ue los meses que se esta visualizanuo en el calenuaiio.

TodayDate
Esta piopieuau se utiliza paia establecei o almacenai la fecha actual.


En mouo ue uiseo el usuaiio pueue seleccionai el uia uesue la piopieuau.




El Control Timer

Este contiol peimite ejecutai instiucciones caua inteivalo ue tiempo en el cual se ueben
ejecutai las instiucciones se le asigna en milisegunuo, esto quieie uecii, que el valoi
iepiesenta un segunuo.

Cuanuo este contiol se uibuja en el foimulaiio, se ubica en la paite infeiioi, como se muestia
en la siguiente ventana ue ejemplo:


El contiol Timei tiene la piopieuau inteival, uonue se inuica el inteivalo ue tiempo en el cual
se ueben ejecutai las instiucciones.

La piopieuau Enableu peimite que se ejecuten o no las instiucciones. El Tiue peimite que se
ejecuten las instiucciones.










Aplicacin Desarrollada N IV - D

Este piogiama muestia la hoia en el foimulaiio. Funciona como un ieloj uigital, poique la
hoia va cambianuo caua segunuo.





Contioles uel foimulaiio

El contiol LblReloj tiene las
siguientes piopieuaues:




El contiol Timei tiene las siguientes piopieuaues:

Instrucciones del evento Tick del control Timer.

Estas instiucciones se ejecutan caua segunuo, poique en la piopieuau inteival ue este
contiol hemos asignauo el valoi y las instiucciones se ejecutan en foima automtica poi
el valoi Tiue que tiene la piopieuau Enableu.

LblReloj.Text = TmeStiing

Aplicacin Desarrollada N IV -E

Este piogiama peimite mostiai el mensaje: visual Basic.Net 8 paipaueanuo, es uecii,
ocultnuose y visualiznuose, caua segunuos.







Contioles uel foimulaiio



El contiol LblNaico tiene las siguientes piopieuaues:





El contiol LblTitulo uibjelo sobie el contiol LblNaico y asignele las siguientes piopieuaues:



Los valoies ue las piopieuau Font tambin pueuen visualizai y asignai hacienuo clic en su
signo +.


El contiol Time tiene las siguientes piopieuaues:





Instrucciones del evento Tick del control Timer.
Estas instiucciones hacen que el contiol LblTitulo se visualice u se oculte caua segunuos
poi el valoi que tiene el contiol Timei en su piopieuau Inteival.

LblTitulo.visible = Not LblTitulo.visible



El Control ComboBox

Este contiol peimite ingiesai uatos seleccionnuolo uesue una lista ue elementos. Ejemplo:



Los elementos a seleccionai se muestian cuanuo el usuaiio hace clic en la flecha hacia abajo o
pulsa la tecla F.


Sus piopieuaues son:

Name
Esta piopieuau se utiliza paia asignai un nombie al contiol. Se iecomienua que los nombies
empiecen con las letias Cbo. Poi ejemplo: CboCiclo.

AutoCompleteCustomSource
Esta piopieuau se utiliza cuanuo ueseamos que el
contiol ComboBox auto complete alguna palabia que
pouemos esciibii en ese contiol. En esta piopieuau se
esciiben las palabias que el contiol ComboBox uebe
auto completai. Poi ejemplo, si tenemos los ciclos ue
estuuios, al esciibii v se auto completa con los ciclos
que empiezan con esa inicial o iniciales.


Al activai esta piopieuau se visualiza la palabia
Coleccion y un boton.


Al hacei clic en el boton con ties puntos se visualiza la siguiente ventana uonue uebe esciibii
las palabias que uesea que se auto completen:



AutoCompleteode
Esta piopieuau se utiliza paia inuicai la foima como se ueben auto completai las palabias ene
el contiol ComboBox y son las siguientes:

AutoCompleteSource
Esta piopieuau se utiliza paia inuicai el oiigen ue las palabias que se ueben auto completai
en el contiol ComboBox. Elija CustomSouice paia que se utilicen las palabias que ha esciito
en la piopieuau AutoCompleteCustomSouice y elija Listltems paia que se utilicen las palabias
esciitas en la piopieuau Items.

DropDownHeigbt
Esta piopieuau se utiliza paia establecei el tamao ue la lista que contiene los elementos a
seleccionai en el contiol ComboBox. El valoi pie-ueteiminauo es pixeles. En el siguiente
ejemplo la piopieuau tiene el valoi .



DropDownStyle
Esta piopieuau se utiliza paia establecei el compoitamiento uel ComboBox paia seleccionai
los elementos.


DropDownWidtb
Esta piopieuau se utiliza paia establecei el ancho ue la lista que contiene los elementos a
seleccionai en al contiol ComboBox. El valoi pieueteiminauo es pixeles.

Items
Esta piopieuau peimite ingiesai los elementos que el contiol uebe mostiai. Al ingiesai a esta
piopieuau se visualiza la siguiente ventana:



Sorted
Esta piopieuau se utiliza paia inuicai los elementos que muestia el contiol ueben oiuenaise.
Text
Esta piopieuau almacena el texto seleccionauo en el contiol.

Este contiol tambin tiene las piopieuaues BataSouice, BisplayNembei y valueNembei que
se utilizan paia auelante con bases ue uatos.


Aplicacin Desarrollada N IV -

Este piogiama peimite Ingiesai el nombie uel alumno, su especialiuau, ciclo y pension. 0tiliza
paia el ingieso un contiol TextBox, uos contioles ComboBox y un contiol Numeiic0pBown.



La pension minima es y la mxima es y caua ves que hace clic en la flecha hacia abajo o
hacia aiiiba el inciemento es ue nuevos soles.

Si uesea limpiai los uatos paia ingiesai un nuevo alumno, se uebe hacei uoble clic en
cualquiei espacio uel foimulaiio y paia finalizai el piogiama uebe pulsai la tecla ESC.


Los contioles que se ueben uibujai en el foimulaiio son:


Al contiol TxtAlumno asignele el valoi en su piopieuau Naxlength paia contiolai la
cantiuau ue caiacteies que se ueben ingiesai.

Al contiol CboEspecialiuau asignele valoi Tiue en su piopieuau Soteu paia que las
especialiuaues se muestien oiuenauas alfabticamente.

Elementos de la propiedad Item del Control CboEspecialidad












Elementos de la propiedad Item del Control CboCiclo

Al contiol NuuPension le uebe asignai las siguientes piopieuaues:

El foimulaiio uebe tenei valoi Tiue en su piopieuau KeyPieview paia uetectai cuanuo el
usuaiio pulse la tecla ESC paia finalizai el piogiama.



Instrucciones del evento KeyPress del formulario.

Estas instiucciones pieguntan si se ha pulsauo la tecla ESC .si la iespuesta es veiuau finaliza el
piogiama.

If Asc (e.KeyChai) = Then Close ()


Instrucciones del evento DoubleClick del formulario.

Estas instiucciones limpian los uatos ingiesauos paia ingiesai nuevos uatos y asigna la
pension pieueteiminaua ue soles.

txtalumno.text=""
cbociclo.tezt=""
cboespecialiuau=""
Nuupension.value=
Txtalumno.Focus()

Aplicacin Desarrollada N IV -

Este piogiama peimite ingiesai el nombie ue un alumno, su especialiuau, ciclo y segn los
uatos ingiesauos y configuiauos muestia su pension en foima automtica. 0tiliza paia el
ingieso un contiol TextBox, uos contioles ComboBox y un contiol Label.





Este piogiama ue ejemplo tambin tiene un men contextual con las siguientes opciones.


La opcion Nuevo Alumno limpia los uatos ingiesauos y la pension uel alumno paia ingiesai
los uatos ue un nuevo alumno.

La opcion Bescuentos peimite configuiai el piogiama paia que se le aplique o no uescuento a
la pension ue touos los alumnos que estn en el I ciclo.

La opcion Inciementos peimite configuiai el piogiama paia que se le aplique o no un
inciemento a la pension ue touos los alumnos que se encuentian a paitii uel III ciclo.

El poicentaje que se inciementa a la pension ue los alumnos es uel % poi caua ciclo a
paitii uel III ciclo. Esto quieie uecii, que un alumno uel v ciclo tenui un inciemento uel %
ue la pension noimal.

Si se activan las uos opciones, solo los alumnos uel II ciclo pagan la pension exacta.


En la ejecucion uel piogiama tambin se pueue activai cualquieia ue las uos opciones.



Las pensiones uel alumno uepenuen ue la especialiuau y son las siguientes:





Controles del formulario





El men contextual tiene las siguientes opciones:


El men contextual uebe tenei en su piopieuau ShowCheckNaigin el valoi Tiue paia que
muestie la baiia uonue se inuica una opcion esta activaua.



La opcion Bescuentos e Inciementos ueben tenei el valoi Tiue en su piopieuau Check0nClick
paia que muestien su casilla ue veiificacion paia sabei si el usuaiio las a activauo o no.



Al contiol TxtAlumno asignele el valoi en su piopieuau NaxLength paia contiolai su
cantiuau ue caiacteies que se ueben ingiesai.

Al contiol CboEspecialiuau asignele el valoi Tiue en su piopieuau Soiteu paia que las
especialiuaues se muestien oiuenauas alfabticamente.



Al contiol LblPension uebe tenei las siguientes piopieuaues:


El foimulaiio uebe tenei en su piopieuau ContextNenuStiip el nombie uel men contextual
paia que se muestie al hacei clic ueiecho el cualquiei paite libie ue:




Antes ue esciibii las instiucciones ue los contioles, uebe cieai el siguiente pioceuimiento:



Procedimiento Resultados
Este pioceuimiento muestia la pension uel alumno segn la especialiuau y ciclo, y segn la
configuiacion ue las opciones, es uecii, si tiene uescuento en el piimei ciclo o inciemento a
paitii uel teicei ciclo:

Sub iesultauos()
veiifica que se haya seleccionauo la especialiuau
If cbociclo.SelecteuInuex = - Then

lblpencion.Text = Stiing.Empty

Exit Sub
Enu If
veiifica q se haya seleccionauo el ciclo
If cboespecialiuau.SelecteuInuex = - Then

lblpencion.Text = Stiing.Empty
Exit Sub
Enu If

Bim ciclo As Byte
Bim especialiuau As Stiing
Bim pension As Single
almacena la especialiuau ue alumnos
especialiuau = cbociclo.Text
almacena el ciclo uel alumno se le suma a la piopieuau select inuex
ciclo = cboespecialiuau.SelecteuInuex +
establece la pencion uel alumno segun su especialiuau
Select Case especialiuau

Case computacion

pension =

Case auministiacion
pension =

Case iuiomas
pension =

Case maiketing
pension =

Case Else
pension =

Enu Select
Enu Sub




ontrol Timer
A travs del control Timer es posible ejecutar una instruccin en un intervalo de tiempo
especifico, este Timer se activa estableciendo su propiedad nterval con el valor True y se
ejecutar hasta que por medio de la accin del usuario lo detenga o se desactive el
temporizador.
Cuando agrega un Timer este no es visible en el formulario pero si en la parte inferior de la
pantalla (Bandeja de Componentes), justo debajo del formulario.
En Visual Basic .NET el nombre del control cambia su nombre por Timer_Tick
Por ejemplo si desea que se ejecute una accin cada segundo, ser necesario cambiar el valor
de la propiedad nterval a 1000 milisegundos.
Para iniciar la ejecucin del propio Timer es necesario establecer el valor de la propiedad
Enabled a True.
Para detencer la ejecucin del Timer es necesario invocar el mtodo Stop().
Dim i As nteger = 0
Private Sub btnnicio_Click(ByVal sender As System.Jbject
, ByVal e As System.EventArgs) _
Handles btnnicio.Click
Timer1.Enabled = True
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Jbject, ByVal e As
System.EventArgs) _
Handles Timer1.Tick
lblTic.Text = CStr(i)
i += 1
End Sub
Private Sub btnFin_Click(ByVal sender As System.Jbject, ByVal e As
System.EventArgs) _
Handles btnFin.Click
Timer1.Stop()
End Sub


bttp:JJwww.canalvisualbasic.netJmanual-netJvb-netJ