LD1 INTRODUCCION A WINDOWS FORM.doc

Embed Size (px)

Citation preview

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    1/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1-

    1. INTRODUCCION A WINDOWS FORMS1

    1. QUE ES WINDOWS FORMS

    En esta primera parte veremos una definición clasificación de !indo"s Forms

    1.1DEFINICION

    !indo"s Forms es la nueva a plataforma de desarrollo para crear aplicaciones en#icrosoft !indo"s . Es una parte del $et. Frame"or% &ue tiene un con'unto de clasesorientada a o('etos &ue se usan para desarrollar comple'as ro(ustas aplicaciones!indo"s.

    Este con'unto de clases del .$E) Frame"or% se encuentran f*sicamente dentro de lali(rer*a Sstems !indo"s+Forms.dll u(icada donde el directorio donde esta instalado laversión del .$E) Frame"or%, por e'emplo isual Estudio 2002 en + \ !I$$)\ Frame"or%\v1.0./0

    ó3icamente !indo"s Forms tiene la si3uiente 4erar&u*a de 5('etos del .$etFrame"or%, tal como se muestra en la fi3ura 1.1

    Figura 1.1 4erar&u*a de $ameespace de !indo"s Forms.Observación . 6omo se visuali7a en la fi3ura 1.1 ,las clases perteneciente al $amespaceSstem.!indo"s.Form eredan indirectamente de 5('ect &ue es la clase (ase de la cualeredadn todas la clase del $et Frame"or%.

    1.2CASIFICACION

    os o('etos visuales de !indo"s Forms se dividen en 9 cate3or*a

    C!n"r!#. User c!n"r!# $ F!r%s.& a clase control es la clase (ase &ue tiene lafunciona(ilidad de todos los controles &ue se usan en un formulario :class form;+ #ientras&ue la clase

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    2/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2-

    información al usuario. )ool)ip Error Provider, 6omponentes de mens + #ain #en 6onte?t#enu, componentes de auda Aelp Provider.

    C!%%!n Dia#!g (!)es. os cuadros de di=lo3os comunes son o('etos &ue al arrastrarseal formulario tam(in se u(ican en el dise>ador de componentes de isual Estudio+$ettales como di=lo3os de arcivos + 5penFileialo3 SaveFileialo3, i=lo3os de color 6olorialo3, i=lo3os de Fuentes Fontialo3 los di=lo3os de impresión + Printialo3,

    Pa3esetupialo3 PrintPrevie"ialo3.E?isten 2 cate3or*as de o('etos no visuales en !indo"s Forms+

    Ob*e"!s.- pplication, 6lip(oard, 6urrenc #ana3er, 6ursor, Screen, Etc.

    Argu%en"!s +e even"!s+ Aeredan de Sstem.Eventr3s, tales como + GeEventr3,GePressedEventr3, #ouseEventr3, etc

    2. ,ISUA ESTUDIO .NET - WINDOWS FORMS

    isual Estudio .$E) es una erramienta r=pida de desarrollo :D; &ue permite crear 

    todo tipo de aplicaciones+ !indo"s, !e(, 6onsola, i(rer*as, etc2.1CREAR UNA AICACI/N WINODWS EN ,ISUA ESTUDIO .NET

    • esde !indo"s Ele3ir el men inicio, Pro3ramas, #icrososft isual Estudio.$E),#icrosoft isual Estudio $et.

    • esde el visual Estudio Ele3ir el men File, $e", Pro'ect :rcivo $uevo Proecto;•  parecer= la ventana $e"Pro'ect, tal como se muestra en la fi3ura 1.2.

    Figura 1.2  entana de $uevo Proecto en isual Estudio .$E)• Seleccionar en Pro'ect )pes :lado i7&uierdo; el len3ua'e a usar isual Basic

    Pro'ect en templates:Plantillas; :lado dereco; el tipo de aplicación a crear + !indo"s pplication.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    3/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /-

    • En la parte inferior del dialo3o escri(ir en name el nom(re de la aplicación enlocation escri(ir la u(icación donde se desea 3uardar el proecto o seleccionarlo conel (otón Bro"se , finalmente clic en 5G

    2.2DESCRICION DE IDE DE ,ISUA ESTUDIO NET1. Barra de titulo :)itle Bar; . #uestra información del proecto, la aplicación el

    formulario actual, tam(in indica si estamos en dise>o o en e'ecución. Por e'emploemo01 #icrosoft visual Estudio $et Hesi3n- frmemoHesi3n J indica &ueestamos en el proecto emo01 usando visual Basic $et &ue no se an 3ra(adolos cam(ios :J; so(re el formulario actual frm emo en #odo ise>o

    2. Barra de #enus :#enus Bar; contiene los comandos a3rupados por cate3or*ascomo File, Edit, ie", Pro'ect, Build, e(u3, ata, Format, etc.

    /. Barras de Aerramientas :)ool Bars; Entre ellas tenemos, nal7er Build 6ristalDeport e(u3, desi3n , aout , Est=ndar, )e?tEditor, K#, etc.

    9. 6uadro de erramientas :)ool Bo?; + as Aerramientas de )oolBo? se a3rupan encuatro ficas !indo"s Forms, &ue contiene los controles !indo"s Forms@6omponentes, &ue permite insertar componentes@ ata &ue permite tra(a'ar con

    componentes de datos 6lip(oard &ue se usa para pe3ar lo copiado alportapapeles.. ise>ador de Formularios !indo"s : !indo"s Form esi3ner; + Permite crear la

    interfase 3r=fica con solo arrastrar los controles acia el formulario.L. entana de propiedades : Propert !indo"s; , #uestra las propiedades del o('eto ,

    control o componente seleccionado. Se puede or3ani7ar por orden alfa(tico o por cate3or*as.

    . entana E?plorador de Soluciones :Solution E?plore !indo"s;. Presentaor3ani7ada la Msolución M &ue se compone de uno o m=s proectos , cada uno de

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    4/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9-

    estos tiene Mreferencias M M arcivosN &ue lo componen, por e'emplo si el len3ua'eusado es isual Basic.$E) todos los arcivos tendr=n e?tensión B , si 6O lae?tensión ser= 6S, etc.

    8. ise>ador de componentes :6omponente esi3ner;+ Se u(ica en la parte inferior del dise>ador de formularios contiene los componentes de la aplicación &ue nose ven en tiempo de e'ecución.

    . Barra de Estado::Estatus Bar;+ Presenta información del modo de tra(a'o, u(icaciónen el editor :l*nea , columna, car=cter;, estado de la teclas , etc.

    0. E FORMUARIO EN WINODWS FORMS

    En esta parte veremos una definición clasificación de los formularios en !indo"sForms

    0.1DEFINICION

    El formulario es una parte de la pantalla &ue sirve como interfa7 o medio de comunicaciónentre nuestra aplicación el usuario. Qeneralmente presenta información al usuario permite reali7ar el in3reso de datos, tam(in puede mostrar un resultado o salida.

    Fi3ura 1.9 4erar&u*a de $amespace del formulario

    El formulario al i3ual &ue todos los o('etos del $E). Frame"or% son instancias de clase,ste es un control a &ue ereda directamente de la clase Form indirectamente de laclase 6ontrol la &ue se muestra en la fi3ura 1.9

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    5/59

    Practicas de Sistemas de Información 2008B\2. Formularios - -

    0.2CASIFICACION

    E?isten varias formas de clasificar a los formularios

    0.2.1 !r e# "i'! +e in"era 3

    SDI Si%'#e +!cu%en"! 4SDI5  Simple ocument Interface; esta compuesto de un simpleventana tal como se muestra en la fi3ura 1.

    MDI in"era +e %6#"i'#e +!cu%en"!:#ultiple ocument Interface; . Esta compuesta por una ventana principal :Formulario padre; una o mas m=s ventana contenidas:formularios i'os; tal como se muestra en la fi3ura 1.L

    Figura 1.7 Formulario de tipo SI Figura 1.8  Formularios de tipo #I

    0.2.2 !r e# %!+! +e "raba*!

    N! M!+a#.- &u* se encuentran la ventanas est=ndar de !inod"s , las cuales puedenmodificarse de tama>o. )al como se muestra en la fi3ura 1.

    M!+a#.- entro de esta cate3or*a est=n los di=lo3os de !indo"s los cuales tiene sutama>o predefinido tal como se muestra en la fi3ura 1.8

    Figura 1.9  Formulario de tipo no modal Figura 1.: Formulario de tipo modal

    0.2.0 !r e# "i'! +e c!n"eni+!

    C!n C!n"r!#es. Son &uellos formularios &ue contienen controles !ndo"s )alcomo se muestra en la fi3ura 1.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    6/59

    Practicas de Sistemas de Información 2008B\2. Formularios - L-

    C!n ;rar la interfa7 cumplir cierta función en la aplicación.

    ?.2 CASIFICACION

    ?.2.1 !r su "ecn!#!g@a• .NET Pertenecen a clase del .$E) Frame"or% son los &ue de(er*an usarse

    en las aplicaciones !indo"s• Ac"ive . Son controles eredados de 65#, &ue tam(in se puede a3re3ar al

    formulario pero no es conveniente, a &ue no son clases nativas de .$E)sino &ue crean interfaces adicionales para comunicarse con el 6D

    ?.2.2 !r su unción

    e acuerdo con su función , los controles !indo"s se clasifican en+

    Función C!n"r!#4rei*!5 Descri'ción

    Edición de )e?to

    Presentación de)e?to solo lectura

    )e?tBo?:t?t;

    Dic)e?tBo?:rt?;

    a(el :l(l;

     #uestra te?to escrito en tiempo de dise>o&ue puede ser editado por los usuarios entiempo de e'ecución o ser modificadomediante pro3ramación

     Aa(ilita la presentación de te?to con formatode te?to sencillo o de te?to enri&uecido :D)F;

    #uestra te?to &ue los usuarios no puedenmodificar directamente

     lmacenamientode 3r=ficos

    Ima3eist:ils; Sirve como repositorio de im=3enes. os6ontroles Ima3elist los im=3enes &uecontienen pueden reutili7arse de unaaplicación a la si3uiente.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    7/59

    Practicas de Sistemas de Información 2008B\2. Formularios - -

    Esta(lecimientode valores

    Esta(lecimientode feca

    6ec%Bo?:c%; #uestra una casilla de verificación unaeti&ueta para te?to .Se utili7a en 3eneral paraesta(lecer opciones

    DadioButton:r(tn; #uestra un (otón &ue puede activarse odesactivarse

    )rac%Bar:tr(;

    ate)imerPic%er :dtp;

    #ont6alendar :mcr;

      Permite &ue los usuarios esta(le7canvalores mediante el despla7amiento de uncontrol de posición a lo lar3o de una escala

    #uestra un calendario 3r=fico &ue permite&ue los usuarios seleccionen una feca ouna ora

    #uestra un calendario 3r=fico &ue permite&ue los usuarios seleccionen un intervalo defecas

    6uadros de

    di=lo3o

    6olorialo3:cd3;

    Fontialo3:fd3;

    5pen File ialo3:ofd3;

    Printialo3 :pd3;

    PrintPrevie"ialo3 :ppd3;

    SaveFileialo3:sf d3;

      #uestra el cuadro de di=lo3o de selección

    de colores &ue permite &ue los usuariosseleccionen el color de un elemento de lainterfa7.

    #uestra un cuadro de di=lo3o &ue permite&ue los usuarios esta(le7can una fuente sus atri(utos

     #uestra un cuadro de di=lo3o &ue permite&ue los usuarios se desplacen asta unarcivo lo seleccionen

    #uestra un cuadro de di=lo3o &ue permite&ue los usuarios seleccionen una impresora sus atri(utos

    #uestra un cuadro di=lo3o &ue ver= comoaparecer=n un o('eto Pritnocument alimprimirse

    #uestra un cuadro de di=lo3o &ue permite&ue los usuarios 3uarden un arcivo

    6ontroles de#en

    #ain#enu:mmnu;

    6onte?t#enu:cmnu;

     Proporciona un Interf=7 en tiempo de dise>opara la creación de mens

    Implementa un #en &ue aparece cuando elusuario ace clic en un o('eto con el (otónsecundario del mouse

    6omandos Button:(tn;

    $otifIcon:nic;

    Se utili7a para iniciar, detener o interrumpir unproceso

    #uestra un icono en el =rea de notificaciónde estado de la (arra de tareas , &uerepresenta una aplicación &ue se e'ecuta en

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    8/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 8-

    se3undo plano

     3rupar 5troscontroles

    )oolBar:t(r;

    Panel :pnl;

    QroupB5? :3rp;

    )a(6ontrol:ta(;

    6ontiene una colección de controles (utton

     3rupa un con'unto de controles en un marcosin eti&ueta &ue permite el despla7amiento

     3rupa un con'unto de controles tales como(otones de opción en un marco con eti&ueta&ue no permite el despla7amiento

    Proporciona un p=3ina con ficas paraor3ani7ar tener acceso a controlesa3rupados

    ?.0CASE CONTRO

    6omo os controles !indo"s Forms +$E) Aeredan indirectamente de la clase C!n"r!#3todos tienen elementos comunes eredados de control, &ue veremos a continuación+

    ?.0.1 r!'ie+a+es

    as propiedades son los atri(utos o caracter*sticas del control , entre las cuales tenemos.

     ncor 5(tiene o esta(lece los (ordes de control &ue se acoplan a los(ordes de su contenedor 

    Bac%6olor 5(tiene o esta(lece el color de fondo del control

    Bac%QroundIma3e 5(tiene o esta(lece la ima3en de fondo &ue se muestra en elcontrol

    6ausesalidation 5(tiene o esta(lece un valor &ue indica si el control ace &ue se

    realice una validación de todos los controles &ue re&uierenvalidación cuando reci(en el foco

    6onte?t#enu 5(tiene o esta(lece el men conte?tual asociado al control

    6ontrols 5(tiene la colección de controles &ue contiene el control

    6ursor 5(tiene o esta(lece el cursor &ue se muestra cuando el puntero delmouse se sita so(re el control

    oc% 5(tiene o esta(lece el (orde del contenedor principal al &ue est=acoplado un control

    Ena(led 5(tiene o esta(lece un valor &ue indica si el control puede

    responder a la interacción del usuarioFont 5(tiene o esta(lece la fuente del te?to &ue muestra el control

    Fore6olor 5(tiene o esta(lece el color de primer plano del control

    Aas6ildren 5(tiene un valor &ue indica si el control contiene uno o m=scontroles secundarios

    Aei3t 5(tiene o esta(lece el alto del control

    eft 5(tiene o esta(lece la distancia, en pi?eles, &ue e?iste entre el

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    9/59

    Practicas de Sistemas de Información 2008B\2. Formularios - -

    (orde i7&uierdo del control el (orde i7&uierdo del =rea cliente desu contenedor 

    ocation 5(tiene o esta(lece las coordenadas de la es&uina superior  i7&uierda del control en relación con la es&uina superior i7&uierda desu contenedor 

    $ame 5(tiene o esta(lece el nom(re del controlParent 5(tiene o esta(lece el contenedor principal del control

    Di3t 5(tiene la distancia en pi?eles , &ue e?iste entre el (orde derecodel control el (orde i7&uierdo del =rea cliente de su contenedor 

    Di3t)oeft 5(tiene o esta(lece un valor &ue indica si los elementos del controlsi alinean para admitir confi3uraciones re3ionales utili7ando fuentesde dereca a i7&uierda.

    Si7e 5(tiene o esta(lece el alto el anco del control

    )a(Inde? 5(tiene o esta(lece el orden de ta(ulación del control en su

    contenedor 

    )a(Stop 5(tiene o esta(lece o esta(lece un valor &ue indica si el usuariopuede dar el foco a este control mediante la tecla )B

    )a3 5(tiene o esta(lece el o('eto &ue contiene datos so(re el control

    )e?t 5(tiene o esta(lece el te?to asociado al control

    )op 5(tiene o esta(lece la distancia en pi?eles, &ue e?iste entre el(orde inferior del control el (orde superior del =rea cliente de sucontenedor.

    isi(le 5(tiene o esta(lece un valor &ue indica si se muestra el control!idt 5(tiene o esta(lece el anco del control

    ?.0.2 MB"!+!s

    os mtodos son la funciona(ilidad incorporada al control, 3eneralmente sirven paramodificar el estado de los atri(utos :propiedades; entre ellas tenemos

    Brin3)oFront 6oloca el control al principio del orden R

    6reate6ontrol 5(li3a a &ue se cree el control incluidos el identificador loscontroles secundarios

    6reateQrapics 6rea el o('eto 3rapics para el control

    ispose So(recar3ado. i(era los recursos utili7ados por el 6omponent

    ora3rop Inicia una operación de arrastrar colocar 

    FindForm Decupera el formulario en el &ue se encuentra el control

    Focus Esta(lece el foco de entrada en el control

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    10/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 10-

    Qet$e?t6ontrol Decupera el si3uiente control , acia adelante o acia atr=s , en elorden de ta(ulación de controles secundarios

    Qet)pe 5(tiene el o('eto )pe de la instancia actual

    Aide 5culta el control al usuario

    Invalidate So(recar3ado+ invalida un re3ión espec*fica del control ace &uese env*e un mensa'e de di(u'o al control

    Defres 5(li3a al control a invalidar su =rea cliente , acto se3uido o(li3a a&ue vuelva a di(u'arse el control sus controles secundarios

    DesetBac%6olor Desta(lece el valor predeterminado de la propiedad Bac%color 

    Deset6ursor Desta(lece el valor predeterminado de la propiedad 6ursor 

    DesetFont Desta(lece el valor predeterminado de la propiedad Font

    DesetFore6olor Desta(lece el valor predeterminado de la propiedad Fore6olor 

    DesetDi3t)oeft Desta(lece el valor predeterminado de la propiedad Di3t)oeft

    Deset)e?t Desta(lece el valor predeterminado de la propiedad )e?t

    Scale So(recar3ado. 'usta la escala del control de todos los controlessecundarios

    Select So(recar3ado. ctiva un control

    Select$e?t6ontrol ctiva el si3uiente control

    Send)oBac% Env*a el control al final del orden R

    SetBounds So(recar3ado. + Esta(lece los limites del control

    So" #uestra el control al usuario

    Suspendaout Suspende temporalmente la ló3ica del dise>o del control

    )oStrin3 evuelve un o('eto Strin3 &ue representa al o('eto 5('ect ctual

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    11/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 11-

    6lic Se produce cuando se ace clic en el control

    6ursor6an3ed Se produce cuando el valor de la propiedad cursor cam(ia

    isposed 3re3a un controlador de eventos para escucar al eventodisposed en el componente

    ou(le6lic% Se produce cuando se ace do(le clic en el control

    ra3rop Se produce cuando termina una operación de arrastrar colocar 

    ra3Enter Se produce cuando se arrastra un o('eto dentro de loslimites de control

    ra3eave Se produce cuando se arrastra fuera de los limites de control

    ra35ver Se produce cuando se arrastra un o('eto so(re los l*mitesde control

    Ena(led6an3e Se produce cuando cam(io el valor de la propiedad Ena(led

    Enter Se produce cuando se entra en el controlFont6an3ed Se produce cuando cam(ia el valor de la propiedad Font

    Fore6olor6an3ed Se produce cuando cam(io el valor del propiedad Forecolor 

    QiveFeedBac% Se produce durante una operación de arrastre

    QotFocus Se produce cuando el control reci(e el foco

    AelpDe&uested Se produce cuando el usuario solicita auda para un control

    Invalidated Se produce cuando es necesario volver a di(u'ar un control

    Geo"n Se produce cuando se presiona una tecla mientras elcontrol tiene foco

    GePress Se produce cuando se presiona una tecla mientras elcontrol tiene foco

    %e

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    12/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 12-

    control

    #ouse

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    13/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1/-

      El trmino M5rientado a 5('etosN se refiere a &ue e?iste un con'unto de recursos:li(rer*a de clases; &ue permiten ocultar sus atri(utos :Encapsulación; , e?tender sufunciona(ilidad : erencia; modificar su comportamiento :polimorfismo;

    El trmino M6onducido por eventosN si3nifica &ue el códi3o se escri(e asociado a loseventos &ue ocurren a los diferentes o('etos de la aplicación dicos Mo('etosN puedenser MisualesN como el formulario los controles o tam(in M$o visualesN, como

    e?plicamos anteriormente .

    7.2CONTROADORES DE E,ENTOS EN WINDOWS FORMS

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    14/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 19-

    0 "odigo del #rocedimiento $ue res#onde al evento

    End Sub

    E*e%'#! .6rear un controlador en tiempo de dise>o &ue muestre un mensa'e conel nom(re del autor al dar M6lic%N so(re un (otón llamado M(tnutorN

    Private Sub _%ostrarAutor(byval sender as System.&ject, ByVal e asSystems.EventArg andles btnAutor."lic1

    %essageBo'.So)(*+uis ueas/, *Autor/

    End sub

    2, crear un controlador para varios eventos

    Sin"a)is + En isual Basci $E)

    Private nombre#rocedimiento(ByVal sender As System.&bject , ByVale As system2EventArg andles &bjeto3.Evento3&bjeto4.Evento45

     0"odigo del #rocedimiento $ue res#onde a cual$uierevento

    End sub

    C!nsi+eraci!nes

    6uando se crea un controlador para varios eventos a &ue tener en cuenta &ue todoslos eventos de(en ser de la misma clase, por e'emplo.

    Even"Args. Para la maor*a de los eventos de !indo"s Forms como ooad , 6lic% ,(l6lic%, )e?t6an3ed, De7ise, etc.

    M!useEven"Arg+ para eventos del #ouse como+ #ouseo"n, #ouse

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    15/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1-

    )am(in podemos asociar deasociar en tiempo de e'ecución de la aplicación uncontrolador para uno o m=s eventos.

    1. As!ciar un c!n"r!#a+!r a un! ! %

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    16/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1L-

    CAITUO 2 TRA(AANDO CON E FORMUARIO

    1. CASE FORMS

    a clase form se encuentra en el $amespace MSstems.!indo"s.Forms.FormN es laclase (ase de la cual ereda todo formulario en !indo"s Forms. Es por eso &ue acontinuación anali7amos los miem(ros o elementos &ue lo forman

    1.1ROIEDADES

     l i3ual &ue la maoria de los controles, el formulario ereda varias propiedades de laclase 6ontrol, tam(in al3unas de la clase Scrolla(le6ontrol para el despla7amiento una de la clases 6omponent 6ontainer6ontrol

      continuación se presenta sólo las propiedades nuevas o reempla7adas

     cceptButton 5(tiene o esta(lece el (otón del formulario &ue se activa cuando

    el usuario presiona la tecla E$)DD ctiveForm 5(tiene el formulario activo actual para esta aplicación

     ctive#di6ontrol 5(tiene la ventana #I :Interf=7 de mtiples documentos;secundaria activa actual

     utoScale 5(tiene o esta(lece un valor &ue indica si el formulario a'usta sutama>o el de sus controles al alto de la fuente &ue utili7a

     utoScaleBaseSi7e 5(tiene o esta(lece o esta(lece el tama>o (ase para el a'usteautom=tico del tama>o del formulario

     utoScroll Deempla7ado. 5(tiene o esta(lece un valor &ue indica si en el

    formulario se permite el despla7amiento autom=ticoBac%6olor Deempla7ado de 6ontrol.Bac%6olor  

    6ancelButton 5(tiene o esta(lece el controld de (otón &ue se activar= cuando elusuario presion la tecla ES6

    6lientSi7e 5(tiene o esta(lece el tama>o del =rea cliente del formulario

    6ontrolBo? 5(tiene o esta(lece un valor &ue indica si se muestra un cuadrode control en la (arra de t*tulo del formulario

    es%topBounds 5(tiene o esta(lece el tama>o la posición del formulario en elescritorio de !indo"s

    es%)opocation 5(tiene o esta(lece el tama>o la posición del formulario en elescritorio de !indo"s

    ialo3Desult 5(tiene o esta(lece el resultado de cuadro de di=lo3o para elformulario

    FormBorderStle 5(tiene o esta(lece el estilo de (orde del formulario

    AelpButton 5(tiene o esta(lece un valor &ue indica si se muestra un (otón deauda en el cuadro de t*tulo del formulario

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    17/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1-

    Icon 5(tiene o esta(lece o esta(lece icono del formulario

    Is#di6ild 5(tiene un valor &ue indica si el formulario es un formulario#I: interf=7 de mltiples documentos; secundario

    Is#di6ontainer 5(tiene o esta(lece un valor &ue indica si el formulario es uncontenedor para formularios #I :Interf=7 de mltiples

    documentos; secundariosGePrevie" 5(tiene o esta(lece un valor &ue indica si el formulario reci(e los

    eventos clave antes de &ue pasen al control &ue tiene el foco

    #a?imi7eBo? 5(tiene o esta(lece un valor &ue indica si se muestra el (otónma?imi7ar en la (arra de t*tulos del formulario

    #a?imunSi7e 5(tiene el tama>o m=?imo al &ue puede a'sutarse el formulario

    #di6ildren 5(tiene una matri7 de formularios &ue representa los formularios#I : Interf=7 de mltiples documentos; secundarios del formulario

    #diparent 5(tiene o esta(lece el formulario #I: Interf=7 de mltiples

    documentos ;Princiapl actual de este formulario

    #enu 5(tiene o esta(lece el #ain#enu &ue se muestra en el formulario

    #er3ed#enu 5(tiene el men com(inado del formulario

    #ini?eBo? 5(tiene o esta(lece un valor &ue indica si se muestra el (otón#inimi7ar en la (arra de t*tulo del formulario

    #inimunSi7e 5(tiene el m*nimo tama>o al &ue se puede a'ustarse el formulario

    #odal 5(tiene un valor &ue indica si el formulario se muestra de formamodal

    5pacit 5(tiene o esta(lece el nivel de opacidad del formulario5"nedForms 5(tiene una matri7 de o('etos Form &ue representa todos los

    formularios &ue posee dico formulario

    5"ner 5(tiene o esta(lece el formulario propietario de este formulario

    So"In)as%(ar 5(tiene o esta(lece un valor &ue indica si se muestra el formularioen la (arra de tareas de !indo"s

    Si7e 5(tiene o esta(lece el tama>o del formulario

    Si7eQripStle 5(tiene o esta(lece el estilo de control de tama>o &ue se muestraen el =n3ulo inferior dereco del formulario

    StarPosition 5(tiene o esta(lece la posición inicial del formulario en tiempo dee'ecución

    )opevel 5(tiene o esta(lece un valor &ue indica si el formulario de(emostrarse como ventana de nivel superior 

    )op#ost 5(tiene o esta(lece un valor &ue indica si el formulario de(emostrarse como un formulario de nivel superior 

    )ransparencGe 5(tiene o esta(lece el color &ue representar= las =reas

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    18/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 18-

    transparentes del formulario

    !indo"sState 5(tiene o esta(lece el estado de la ventana del formulario.

    1.2 MB"!+!s

     a maor*a de los mtodos de la clase Form son eredados de la clase control al3unode las clases #arsallBDef5('ect,Scrolla(le6ontrol, 6omponent 5('ect, e?cepto lossi3uientes mtodos &ue son propios , reempla7ados o so(recar3ados.

     ctivate ctiva el formulario le otor3a el foco

     dd5"nedForm 3re3a un formulario propietario al formulario

    6lose 6ierra el formulario

    QetutoScaleSi7e 5(tiene el tama>o cuando el tama>o del formulario se a'ustaautom=ticamente (as=ndose en una fuente concreta

    Aide Se ereda del control. 5culta el formulario al usuaario

    aout#di 5r3ani7a los formularios #I :Interf=7 de mltiples documentos;secundarios del formulario #I Principal

    Demove5"nedForm Cuita un formulario propietario de este formulario

    SetestopBounds Esta(lece los l*mites del formulario en las coordenadas delescritorio

    Setestopocation Esta(lece la posición del formulario en coordenadas del escritorio

    So" Se ereda del 6ontrol. #uestra el formulario al usuario

    So"ialo3 So(recar3ado de control. #uestra el formulario como un cuadrode di=lo3o modal

    )oSrin3 Deempla7ado de 5('ect . )oStrin3

    1.0 E,ENTOS

      En cuanto a los eventos de la clase Form son eredados en su maor*a de la clase6ontrol e?cepto los si3uientes.

     ctivated Se produce cuando el formulario se activa por códi3o delpro3rama o por parte del usuario

    6losed )iene lu3ar cuando el formulario est= cerrado

    6losin3 )iene lu3ar cuando se cierra el formulario

    esactivate Se prodcue cuando el formulario pierde el foco no es elformulario activo

    Inputan3ua'e6an3ed Se produce despus de cam(iarse el idioma de entrada delformulario

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    19/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1-

    Inputa3ua'e6an3in3 Se produce cuando el usuario intenta cam(iar el idioma deentrada del formulario

    oad Se produce antes de &ue se muestre unformulario por  primera ve7

    #a?imi7edBounds6an3ed Se produce cuando cam(ia el valor de la propeidad

    #a?imi7edBounds#inimum Si7e6an3ed Se produce cuando cam(ia el valor de la propiedad

    #a?imum si7e

    #di6ilctivate Se produce cuando un formulario #I: interf=7 de mltiplesdocumentos ; secundarios se activa o se cierra dentro deuna aplicación #I

    #enu6omplete Se produce cuando el men de un formulario pierde el foco

    #enuStar Se produce caundo el men del un formulario reci(e el foco

    #inimumSi7e6an3ed Se produce cuando cam(ia el valor de la propiedad

    #inimumSi7e

    !. CREANDO UN FORMUARIO WINDOWS FORMS

    6uando creamos una aplicación !indo"s automaticamente se adiciona un formularioa la aplicación+ En esta parte conoceremos un poco m=s so(re el formulario,entenderemos el codi3o 3enerado por isual Estudio al a3re3ar un formulario, tam(inveremos como adicionar um nuevo formulario a la aplicación finalmente comoconfi3urar el formulario de inicio en la e'ecución de la aplicación !indo"s.

    2.1  Es"ruc"ura +e có+ig! genera+! '!r e# !r%u#ari!

      continuación se muestra el códi3o 3enerado por isual Estudio al a3re3ar unformulario al proecto usando como en3ua'e isual Basic $E).

    ?@lobal.%icroso8t.VisualBasic."om#ilerServices.esigner@enerated( _Partial "lass 6orm3  7nerits System.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    20/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 20-

      !6orm3  !  %e.AutoScaleimensions ; Ne) System.ra)ing.Sie6(.FG, 3H.FG  %e.AutoScale%ode ; System.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    21/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 21-

    Figura 2.1 entana de a>adir nuevo formulario

    2.0 C!niguran+! e# !r%u#ari! +e inici!

    Es comun tener en un proecto de una aplicación !indo"s varios formularios de lascuales necesitamos iniciar la e'ecución por uno de ellos al &ue llamaremos MFormulariode inicioN

    Figura 2.2 Fica 3eneral de la ventana de p=3ina de propiedades

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    22/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 22-

    Para confi3ura el formulario de inicio , realice los si3uientes pasos+

    • e men MProectN ele3ir MPropertiesN o tam(in clic dereco so(re elproecto , del menu conte?tual ele3ir MPropertiesN.

    • Se mostrar= la fica MQeneralN de la ventana MPropert Pa3esN , tal como se veen la fi3ura 2.2

    • En la opción MStartup 5('ectN ele3ir del com(o el nom(re del formulario &ueser= el &ue inicie clic en el (otón MceptarN

    0 CONFI;URANDO ROIEDADES DE FORMUARIO

    En esta parte veremos cómo cam(iar la apariencia del formulario confi3urando al3unasde sus propiedades, primero veremos como cam(iar el fondo del formulario, lue3ocomo mostrarlo siempre delante de otras ventanas, despus se ver= como volverlotransparente finalmente como crear un formulario no rectan3ular.

    0.1 M!+iican+! e# F!n+! +e# F!r%u#ari!

    El Fondo del formulario puede tener / aspectos distintos

    1. Un C!#!r +e !n+!+ 6onfi3urando la propiedad (acJC!#!r  en un cierto color.

    2. Una I%agen +e !n+!+ 6onfi3urar la propiedad (acJgr!un+I%age en un arcivode ima3en &ue puede ser (mp, 3if, 'p3, 'pe3, pn3,ico,ernf o "mf.

    /. Un +egra+a+! +e +!s c!#!res  + Para esto a &ue so(re escri(ir el eventoOnain"  del formulario usar el mtodo Fi##Rec"ang#e  de la clase Qrapicspasando como par=metros el de3radado el rect=n3ulo a colorear.

    De%! >1.

    $uestra primera demostración tiene por o('etivo ense>ar a modificar el fondo delformulario colocando so(re ste un de3radado a7ul similar a la pantalla de lospro3ramas de instalación :Setup; .Para lo cual realice los si3uientes pasos.1. 6rear una plicación !indo"s en isual Basic .$E) llamado De%!>1.2. En la ventana del e?plorador de soluciones seleccionar el arcivo Form1 en la

    ventana de propiedades cam(iar la propeidad File$ame a r%Se"u'./. En el ise>ador de formularios !indo"s , seleccionar el formulario confi3urar sus

    propiedades , tal como se muestra en el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  Form1 $ame

    )e?t!indo"sState

    frmSetupSetup#a?imi7ed

    9. En la ventana e?plorador de soluciones dar clic en el (otón Mie" 6odeN.. En el editor de códi3o de la lista de o('etos seleccionar M5verridesN de la lista de

    eventos seleccionar M5nPaintN.L. En el editor de códi3o u(icarse al inicio : antes de la definición de la clase;

    escri(ir los si3uiente+7m#orts System.ra)ing.ra)ing4

    N!"a.- Se usa este namespace para tra(a'ar con el de3radado

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    23/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2/-

    . So(re escri(ir el evento 5nPaint con el si3uiente códi3o

      Protected &verrides Sub &nPaint(ByVal e As System.ectangulo As Ne) >ectangle(F, F, %e.Sie.ectangulo, "olor.Blue,"olor.Blac1, +inear@radient%ode.Bac1)ardiagonal  e.@ra#ics.6ill>ectangle(egradado, >ectangulo

      End Sub

    8. 6onfi3urar frmSetup como formulario de inicio e'ecutar la aplicación con F

    Figura 2.0  entana con el resultado de lae'ecución del emo01

    Có+ig! +e# !r%u#ari!7m#orts System.ra)ing.ra)ing4Public "lass 8rmSetu#  7nerits System.ectangle(F, F, %e.Sie.ectangulo, "olor.Blue,"olor.Blac1, +inear@radient%ode.Bac1)ardiagonal  e.@ra#ics.6ill>ectangle(egradado, >ectangulo  End Sub  Private Sub 8rmSetu#_+oad(ByVal sender As System.&bject, ByVal e As 

    System.EventArgs andles %yBase.+oad  End Sub

    End "lass

    0.2 M!s"ran+! e# !r%u#ari! sie%'re en 'ri%er '#an!

    En al3unas aplicaciones !indo"s se necesita &ue el formulario este siempre adelante oen primer plano , por e'emplo si estamos desarrollando una aplicación de tipo 3enda &ueremos recordar un cierto evento al usuario entonces necesitamos &ue la ventana delmensa'e o recordatorio apare7ca por encima de las dem=s ventanas.

    En versiones anteriores de isual Basic esto se lo3ra(a usando una función del interface

    de Pro3rmación de plicaciones :AIKs5  llamado A#Ha$sOnT!' . En la versión actual deisual Basic .$E) tan sólo a &ue confi3urar la propiedad T!'M!s"  en True para &uenuestra ventana se encuentre por encima de las dem=s ventanas

    0.0 M!s"ran+! e# !r%u#ari! "rans'aren"e

    En ciertas aplicaciones a veces necesitamos &ue el formulario se vuelva transparente ,por e'emplo al mover una ventana arrastr=ndola de la (arra de t*tulo &ueremos &ue sevea lo &ue est= detr=s del fondo o tam(ien al cerrar la ventana &ueremos &ue esta sedisuelva, etc.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    24/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 29-

    En versiones anteriores de isual Basic esto se lo3ra(a usando una función de la Interf=7de la pro3rmación de aplicaciones 4AIs5 llamada Se"Win+!Hs!ng. En la ersión actualde isual Basic .$E) tan solo a &ue confi3urar la propiedad O'aci"$ con un porcenta'e:0 a 100; o su e&uivalente en un valor decimal :0 a 1;

    Por defecto esta propiedad tiene el valor de 100 :&ue es i3ual a 1; por lo &ue elformulario se ve opaco o normal, si la &ueremos ver semi transparente confi3urar la

    propiedad 5pacit en 0 : &ue es i3ual a 0.;+ Si lo deseamoa ver totalmetnetransparente : en realidad esta no se ver*a; tan solo confi3urar opacit en 0 : &ue es lomismo &ue 0;

    De%!>2 

    $uestra se3unda demostración tiene por o('eto ense>ar a crear un formulario &ue estsiempre en primer plano, &ue ten3a una ima3en de fondo &ue aprovece lascaracter*sticas de transparencia en forma pro3resiva.

    El e'emplo muestra un formulario siempre adelante con un fondo creado en Paint aldar clic a este formulario empe7ar= a volverse cada ve7 mas transparente asta finali7ar la aplicación . Para lo cual realice los si3uiente+

    1. 6rear una ima3en de mapa de (its en el Paint llamada o3o.(mp &ue ten3a 900 ?/00 pi?eles, un color de fondo a7ul una eti&ueta amarilla al centro dondeapare7ca un t*tulo cual&uiera en color ro'o.

    2. 6rear una plicación !indo"s en isual Basic.$et llamada De%!>2

    /. En la ventana de e?plorador de soluciones seleccione el arcivo Form1 en laventana de propiedades cama(iar la propeidad Filename a r%!g!.

    9. En el ise>ador de formularios !indo"s , seleccionar el formulario confi3urar sus propiedades , tal como se muestra en el si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Form1 $ame)e?tStarPositionSi7eBac%QroundIma3e)op#ost5pacit6ursor 

    frmo3o6lic para desaparecer 6enterScreen!idtT900, Aei3t T/00o3o.Bmp)rue100Aand

    . Para volver transparente pro3resivamente el formulario necesitamos arrastrar elcomponente )imer del cuadro de erramietnas al formulario

    L. En el dise>ador de componentes, seleccionar el )imer confi3urar sus propiedadestal como se muestra en el si3uiente cuadroOb*e"! r!'ie+a+ ,a#!r  )imer1 $ame

    Ena(leInterval

    tmro3oFalse100

    . En la ventana e?plorador de soluciones dar clic en el (otón Mie" 6odeN

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    25/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2-

    8. Para pro3rmar &ue se a(ilite el )imer al dar clic al formulario, en el editor decódi3o de la lista de o('etos seleccioanr MBase 6lass EventN de la lista de eventosseleccioanr M6lic%N.

    . #odificar el nom(re del procedimeitno a Labi#i"arTi%er   escri(ir el si3uientecódi3oPrivate Su( Aa(ilitar)imer:Bal sender s 5('ect, Bal e s Sstem.Eventr3s; Aandles#Base.6lic%  tmro3o.Ena(led T )rue  End Su(

    10. Para &ue pro3resivamente se vuelva cada ve7 m=s transparentes de la listadeo('etos seleccione Mtrmo3oN de la lista de eventos seleccione M)ic%N

    11. #odificar el nom(re del procedimiento a olver trnasparente escri(ir el si3uienteM6ódi3oN  Private  Su(  olver)ransparente:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.Eventr3s; Aandles tmro3o.)ic%  Static $ s Inte3er   $ T $ U 1  #e.5pacit T :100 - $; V 100

      If  $ T 100 )en #e.6lose:;  End Su(

    12.6onfi3urar frmlo3o como formulario de inicio e'ecutar la aplicación pulsando F

    Figura 2.? entana con el resultado de le e'ecución del emo02

    C!+ig! +e# !r%u#ari!Pu(lic 6lass frmo3o  Inerits Sstem.!indo"s.Forms.Form  Private  Su(  Aa(ilitar)imer:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.6lic%  tmro3o.Ena(led T )rue  End Su(  Private Su( olver)ransparente:Bal sender s Sstem.5('ect, Bal e s Sstem.Eventr3s;Aandles tmro3o.)ic%  Static $ s Inte3er 

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    26/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2L-

      $ T $ U 1  #e.5pacit T :100 - $; V 100  If  $ T 100 )en #e.6lose:;  End Su(End 6lass

    0.? Crean+! un !r%u#ari! n! rec"angu#ar   $o siempre las aplicaciones !indo"s de(en presentar su contenido en formulariosrectan3ulares, sino &ue a veces necesitamos eliminar el fondo de la ventana presentandosolo la fi3ura &ue ste conten3a por e'emplo+ una elipse, una ima3en, etc.

    En versiones anteriores de isual Basic esto era un poco comple'o usando dos fucniones PIWs llamados Se"Win+!HsRgn  Crea"eE##i'"icR;n  . a primera definia el ran3odonde se reali7a(a la presentación la se3unda crea(a una elipse para presentar losresualtados.

    En le versión actual de visual estudio.$E) el proceso es m=s sencillo el cual e?plicamosa continuación+

    1. crear un arciv! +e I%agen de mapa de (its :b%'; con un color de fondo &ueservir= para recortar el formulario

    2. 6onfi3urar la resolución de la pantalla en colores verdaderos %en!res a 2? bi"s,por e'emplo color de alta densisdad :18 bi"s5  , a &ue de los contrario no semostrar= la ventana recortada.

    /. 6onfi3urar la propiedad F!r%(!r+erS"$#e del formulario en N!ne para ocultar la(arra de t*tulo sus (otones

    9. 6onfi3urar la propiedad (acJ;r!un+I%age  del formulario con la ima3en de fondo&ue se desea usar para recortar el fondo

    . 6onfi3urar la propiedad Trans'arence$e$ del formulario con el mismo color defondo &ue tiene la ima3en de mapa de (its

    L. 6rear un 'r!ce+i%ien"!  mane'ador de eventos &ue permita cerrar   el formulario,opcionalmente si se desea mover el formulario a &ue escri(ir códi3o adicional.

    De%! >0.

    Esta demostración tiene por o('etivo crear un formulario no rectan3ular para o cual seusar= el arcivo anteriormente creado en Paint llamado o3.(mp.

    El e'emplo muestra un formulario de forma eliptica al cual se le a suprimido el fondo aldar clic a ste , finali7ar= la aplicación para los cual de(emos reali7ar los si3ueitnespasos+

    1. En el escritorio de !indo"s dar clic dereco del men conte?tual seleccioanr MPropiedadesN , lue3o en la ltima fica de M6onfi3uraciónN en la opción M6oloresNele3ir M6olor de alta densidad :1L (its;N.

    2. 6rear una aplicación !indo"s en visual Basci .$et llamado De%!>0

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    27/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2-

    0. En la ventana de e?plorador de soluciones seleccionar el arcivo Form1 en laventana de propiedades cam(iar la propiedad File$ame a r%!g!

    ?. En el dise>ador de formularios !indo"s, seleccioanr el formulario confi3urar suspropiedades , tal como se muestra en el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  

    Form1 $ameFormBorderStleSi7eBac%QroundIma3e)ransparentGe6ursor 

    frmo3o$one!idtT900, Aei3tT/00o3o.(mpBlueAand

    7. En la ventana e?plroador de soluciones dar clic en el (otón Mie"6odeN

    8. 6omo no e?iste (arra de titulo no a el (otón cerrar, para &ue se pueda finali7ar la aplicación al dar clic al formulario, de la lista de o('etos seleccionar M Base 6lassEventsN de la lista de eventos seleccionar N6lic%N

    9. #odificar el nom(re del procedimiento a 6errar escri(ir el códi3o

    Private Sub "errar(ByVal sender As System.&bject, ByVal e As System.EventArgsandles %yBase.+oad  %e."lose(

      End Sub

    :. 6onfi3urar Frmo3o como formulario de incicio e'ecutar la aplicación :F;

    Figura2.7 entna con el resultado de a e'ecución del emo0/

    Có+ig! +e# r!%u#ari! +e# De%!>0

    I3ual al del paso

    ?. USANDO OS METODOS DE FORMUARIO

    En esta sección veremos como tra(a'ar con los mtodos del formulario para poder reali7ar operaciones con estos , tales como mostrar , ocultar cerrar.

    ?.1 M!s"ran+! un !r%u#ari!

    Para mostrar un formulario creado es necesario crear una instancia de la clase formulario:o('eto; lue3o llamar a uno de los mtodos de visuali7ación. E?isten dos formas demostrar formularios.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    28/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 28-

    ?.1.1 M!s"ran+! un !r%u#ari! n! M!+a#

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    29/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2-

    Sugerencia,.- Si el formulario no se va a usar constantemente lo me'or es cerrarlo descar3arlo, para evitar el consumo de memoria del formulario innecesariamente. Por e'emplo , un formulario de o3in al sistema se presenta una sola ve7 lue3o a &uecerrarlo.N!"a1.- Si la aplicación tiene varios formularios , si se cierra el formulario de inicio, entonces

    finali7a la aplicación descar3=ndose todos los formularios creados desencaden=ndoselos eventos de cierre :6losin3 closed; del formulario de inicio.

    N!"a2.- Si la aplicación tiene varios formularios se desea desde cual&uier formulario finali7ar laaplicación sin desencadenar los eventos del formulario de inicio, antes se usa(a laintrucción End, aora en .$E) se usa el mtodo e?it de la clase application tal comosi3ue+ pplication.E?it:;

    De%! >?.-

    Esta demostración tiene por o('eto usar los mtodos del formulario para ver lasdiferencias entre formularios modales no modales as* como aperender la forma deocultar cerrar formularios.

    El e'emplo tra(a'a con tres formularios, el formulario inicial presenta un men de /opciones, la primera opción presenta un formulario como no modal con utilidades de

    !indo"s , la se3unda opción presenta un formulario como modal con pro3ramas de5ffice la tercera opción permite finali7ar la aplicación. Para lo cual de(emos reali7ar lossi3uientes pasos+

    1. 6rear una aplicación !indo"s en isual Basic +$E) llamado De%!>?.2. En la ventana de e?plorador de soluciones seleccionar el arcivo Form1 en la

    ventana de propiedades cam(iar la propiedad Filename a r%rinci'a#.0. En el dise>ador de formularios !indo"s , arrastrar tres controles in%a(el del

    )oolBo? acia el formulario confi3urar la propiedades , tal como se muestra en elsi3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Form1 $ame

    )e?tFormBorderstle#a?imi7eBo?#inimi7eBo?StarPositionr 

    frmPrincipal

    #en de opcionesFi?ed simpleFalseFalse6enterScreen

    in%a(el1 $ame)e?t

     utoSi7eFont

    l%l!indo"s!indo"s)rueSi7eT12

    in%a(el2 $ame)e?t

     utoSi7eFont

    l%l5ffice5ffice

    )rueSi7eT12

    in%a(el/ $ame)e?t

     utoSi7eFont

    l%lSalir Salir )rueSi7eT12

    ?.  >adir un se3undo formulario + del #en MPro'ectN ele3ir Mdd !indo"s FormN,escri(ir como nom(re r%Win+!Hs  clic en M5penN.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    30/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /0-

    7. En el dise>ador de formularios !indo"s, arrastrar / controles in%a(el del)oolBo? acia el formulario confi3urar las propiedades , tal como se muestra enel si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Frm!indo"s )e?t

    FormBorderstle#a?imi7eBo?#inimi7eBo?

     plicaciones de !indo"s

    Fi?edSin3leFalseFalse

    in%a(el1 $ame)e?t

     utoSi7eFont

    l%lcalculadora6alculadora)rueSi7eT12

    in%a(el2 $ame)e?t

     utoSi7eFont

    l%lBloc%Bloc% de $otas)rueSi7eT12

    in%a(el/ $ame)e?t utoSi7eFont

    l%lDe3resar De3resarr )rueSi7eT12

    8.  >adir un tercer formulario + del #en MPro'ectN ele3ir Mdd !indo"s FormN, escri(ir como nom(re r%Oice  clic en M5penN.

    9. En el dise>ador de formularios !indo"s, arrastrar / controles in%a(el del)oolBo? acia el formulario confi3urar las propiedades , tal como se muestra enel si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Frm5ffice )e?tFormBorderstle#a?imi7eBo?#inimi7eBo?

     plicaciones de 5fficeFi?edSin3leFalseFalse

    in%a(el1 $ame)e?t

     utoSi7eFont

    l%l!ord!ord)rueSi7eT12

    in%a(el2 $ame)e?t

     utoSi7eFont

    l%lE?celE?cel

    )rueSi7eT12in%a(el/ $ame

    )e?t utoSi7eFont

    l%lDe3resar De3resarr )rueSi7eT12

    :. ado los tres formularios re3resar a r%rinci'al dando do(le clicso(re el nom(re , en la ventana de e?plorador de soluciones.

    =. En la ventana de e?plorador de soluciones dar clic en el (otón Mie" 6odeN.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    31/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /1-

    1>.  continuación pro3ramar los si3uientes procedimientos mane'adores en loseventos inJC#icJe+ de los / controles inJabe#.

      Private  Su(  #ostrarFormulario!indo"s:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l!indo"s.in%6lic%ed  im o('!indo"s s $e" frm!indo"s:;  X#ostrando el formulario como no modal

      o('!indo"s.So":;  XEste mensa'e se muestra inmediatamente  #essa3eBo?.So":Y#ostrando el formularioY, YFormulario $o #odalY;  End Su(

      Private  Su(  #ostrarFormulario5ffice:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l5ffice.in%6lic%ed  im o('!indo"s s $e" frm5ffice:;  X#ostrando el formulario como modal  o('!indo"s.So"ialo3:;  XEste mensa'e se muestra despues de cerrar   #essa3eBo?.So":Y6errando el formularioY, YFormulario #odalY;  End Su(

      Private  Su(  Salirplicacion:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lSalir.in%6lic%ed  X6errando el formulario de inicio   XFinali7ando la plicacion !indo"s  #e.6lose:;  End Su(

    11. En la ventana e?plorador de soluciones dar do(le clic en el nom(re del formularior%Win+!Hs  clic al (otZn Mie" 6odeN.

    12.  continuación pro3rmar los si3uientes procedimietnos mane'adores en loseventos inJC#icJe+ de los / controes inJabe#+

    Private  Su(  E'ecutar6alculadora:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l6alculadora.in%6lic%ed  Process.Start:Y6alc.e?eY;  End Su(  Private  Su(  E'ecutarBloc$otas:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lBloc.in%6lic%ed  Process.Start:Y$otepad.e?eY;  End Su(  Private  Su(  De3resarPrincipal:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lDe3resar.in%6lic%ed  #e.6lose:;  End Su(

    10.En la ventana e?plorador de soluciones dar do(le clic en el nomre del formularior%Oice  clic al (otón Mie" 6odeN.

    1?.  continuación pro3ramar los si3uientes procedimientos mane'adores en loseventos inJC#icJe+ de los / controles inJabe#

      Private  Su(  E'ecutar!ord:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l!ord.in%6lic%ed

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    32/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /2-

      Process.Start:Y!in"ord.e?eY;  End Su(

      Private  Su(  E'ecutarE?cel:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lE?cel.in%6lic%ed  Process.Start:YE?cel.e?eY;  End Su(

      Private  Su(  De3resarPrincipal:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lDe3resar.in%6lic%ed  #e.6lose:;  End Su(

    17.6onfi3urar frmPrincipal como el formulario de inicio18.Qra(ar e'ecutar la aplicación pulsando F

    Figura 2.:  entana de formulario de iniciofrmPrincipal del emo09

    19.Ele3ir la primera opción del #en:!indo"s; se mostrara[un cuadro demensa'e similar al de la fi3ura 2.

    Figura 2.9 6uadro de mensa'e del formulario frm!indo"s del emo09

    1:.espues de dar MceptarN so(re el cuadro de mens'ae veremos el formulariofrm!indo"s , similar al mostrado en la fi3ura 2.8

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    33/59

    Practicas de Sistemas de Información 2008B\2. Formularios - //-

    Figura2.: entana del formulario no modal frm!indo"s del emo09

    N!"a.- 6omo el formulario frm!indo"s es no modal cada ve7 &ue se muestre aparecer=inmediatamente el cuadro de mensa'e .demas se puede a(rir varios formularios al mismotiempo.

    1=.  En el formulario frm!indo"s al seleccionar las dos primeras opciones se a(rir=nla clauladora el Blo% de $otas al ele3ir la tercera se cerrar= la ventana re3resaremos al formulario frmprincipal.

    2>.En el formulario frmPrincipal , ele3ir la se3unda opción :5ffice; se mostrar= laventana del formulario frm5ffice similar a la fi3ura 2.

    Figura 2.= entana del formulario modal frm5ffice del emo09

    21.En el formulario frm5ffice al seleccioanr las dos primeras opciones se a(rir=n el!ord el E?cel al eli3ir la tercera se cerrar= la ventana re3resaremos alformulario frmPrincipal.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    34/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /9-

    22.  espus de cerrar la ventana del formulario frm5ffice recin aparecer= el cuadrode mensa'e , similar al mostrado en la fi3ura 2.10

    Figura 2.1>  6uadro de mensa'e del formulario frm5ffice del emo09

    Observaci!n.- 6omo el formulario frm5ffice es modal sólo se muestra un formulario a la ve7 recin cuando se cierra te se muestra el mensa'e.

    20. finalmente , para salir de la aplicación eli'a MsalirN en MfrmPrincipalN

    C!+ig! +e# !r%u#ari!s +e De%!0 4rinci'a#Pu(lic 6lass frmPrincipal

      Inerits Sstem.!indo"s.Forms.Form  Private  Su(  #ostrarFormulario!indo"s:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l!indo"s.in%6lic%ed  im o('!indo"s s $e" frm!indo"s:;  X#ostrando el formulario como no modal  o('!indo"s.So":;  XEste mensa'e se muestra inmediatamente  #essa3eBo?.So":Y#ostrando el formularioY, YFormulario $o #odalY;  End Su(

      Private  Su(  #ostrarFormulario5ffice:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l5ffice.in%6lic%ed  im o('!indo"s s $e" frm5ffice:;  X#ostrando el formulario como modal  o('!indo"s.So"ialo3:;  XEste mensa'e se muestra despues de cerrar   #essa3eBo?.So":Y6errando el formularioY, YFormulario #odalY;  End Su(

      Private  Su(  Salirplicacion:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lSalir.in%6lic%ed  X6errando el formulario de inicio   XFinali7ando la plicacion !indo"s  #e.6lose:;  End Su(End 6lassC!+ig! +e# r!%u#ar! Oice

    Pu(lic 6lass frm5ffice  Inerits Sstem.!indo"s.Forms.Form

      Private  Su(  E'ecutar!ord:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l!ord.in%6lic%ed  Process.Start:Y!in"ord.e?eY;

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    35/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /-

      End Su(

      Private  Su(  E'ecutarE?cel:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lE?cel.in%6lic%ed  Process.Start:YE?cel.e?eY;  End Su(

      Private  Su(  De3resarPrincipal:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lDe3resar.in%6lic%ed  #e.6lose:;  End Su(

      Private  Su( frm5fficeoad:Bal  sender s Sstem.5('ect, Bal  e  s Sstem.Eventr3s;Aandles #Base.oad  End Su(End 6lass

    C!+ig! +e# !r%u#ari! Win+!Hs

    Pu(lic 6lass frm!indo"s  Inerits Sstem.!indo"s.Forms.Form  Private  Su(  E'ecutar6alculadora:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l6alculadora.in%6lic%ed  Process.Start:Y6alc.e?eY;  End Su(  Private  Su(  E'ecutarBloc$otas:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lBloc.in%6lic%ed  Process.Start:Y$otepad.e?eY;  End Su(  Private  Su(  De3resarPrincipal:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lDe3resar.in%6lic%ed

      #e.6lose:;  End Su(End 6lass

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    36/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /L-

    7. MANEANDO E,ENTOS EN E FORMUARIO

    En esta parte, primero entendermos como ocurren las cosas so(re un formulario, es decir,los diferentes eventos procedimientos &ue se desencadenan , al3unoa autom=ticamente otros por interacción del usuario.

    )am(in aprenderemos como pro3ramar en los eventos de teclado, eventos del mouse

    eventos de cierre del formulario.7.1 Cic#! +e vi+a +e# F!r%u#ari!.

    6uando se e'ecuta una plicación conteniendo un formulario ocurren mucas cosas &uecomo pro3ramadores de(emos conocer para poder e'ecutar las accionescorrespondientes.

      continuación detallamos en orden de ocurrencia los procedimientos eventos &ue sedisparan cuando se tra(a'a con una aplicaicón !indo"s conteniendo los formularios enisual Basic +$E).

    1. Primero se e'ecuta el procedimiento NeH  del formulario de inicio , tam(in conocidocomo el Mconstructor M . En el podemos inicili7ar componentes, como cone?iones a

    acceso de datos , arcivos , etc. En versiones anteriores de isual Basic se llama(aevento MInitiali7eN.

    2. En se3undo lu3ar, despus de a(erse iniciali7ado el formulario, ocurre el eventoResie  en el formulario de inicio , a &ue este tiene un tama>o definido en lapropiedad MSi7eN

    /. 6uando se car3an los o('etos a memoria ocurre el evento !a+  del formulario deinicio . En este podemos confi3urar propiedades de los controles o componentes dela aplicación , e?cepto tra(a'ar con rutinas de enfo&ue de controles , por e'emplo elmtodo Focus:;.

    9. 6uando el formulario aparece en la pantalla se dispara el evento Ac"iva"e+  delformulario de inicio . Este evento puede usarse para enfocar ciertos controles

    usando el mtodo Focus:;..

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    37/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /-

    Sugerencia.-Podemos pensar &ue el procedimietno $e" el evento oad sonindiferentes para iniciali7ar varia(les o reali7ar acciones de inicio , lo aconse'a(le esacerlo en el evento oad . e i3ual forma ocurre con el evento 6losed elprocedimietno isposed. o aconse'a(le es pro3ramar las acciones de cierre en elevento 6losed.

    De%! >7.-

    Esta demostración tiene por o('etivo reconocer los eventos &ue le suceden a unformulario durante su Mciclo de vidaN , desde &ue se crea asta &ue se destrue sedesactiva.

    El e'emplo presenta un simple formulario con un (otón de comando &ue muestra otroformulario. Se an pro3ramado los principales eventos del formulario de inicio la salidase muestra en la Mventana de salidaN de isual Estudio usando el mtodo !riteine:;del o('eto e(u3. Para lo cual de(emos reali7ar los si3uientes pasos+1. 6rear una pplicación !indo"s en isual Basic .$E) llamado De%!>7.2. En la ventana de e?plorador de soluciones seleccionar el arcivo Form1 en la

    ventana de propiedades cam(iar la propiedad File$ame a r%Even"!.

    /. En el ise>ador de Fromularios !indo"s, arrastrar un control Button del M)oolBo?Nacia el formulario confi3urar las propiedades , tal como se muestra en el si3uientecuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Form1 $ame

    )e?tStarPositionFormBorderstle#a?imi7eBo?#inimi7eBo?

    FrmEventoPro(ando eventos6enterScreenFi?edSimpleFalseFalse

    Button1 $ame

    )e?tSi7e

    Btn#ostarForm

    #ostrar 5tro formulario!idt T10, Aei3t T2/

    9. En la ventana e?plorador de soluciones dar clic en el (otón Mie" 6odeN

    . Escri(ir los si3uientes procedimientos mane'adores de eventos asociados al Balformulario, eli3iendo para ello de la lista de o('etos MBase 6lass EventsN de la listade eventos el evento respectivo, lue3o cam(iar el nom(re del procedimiento pro3ramar como si3ue

      Private  Su(  EventoDesi7e:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.Desi7e  e(u3.!riteine:Y5currio el Evento Desi7eY;  End Su(  Private  Su(  Eventooad:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.oad  e(u3.!riteine:Y5currio el Evento oadY;  End Su(  Private  Su( Eventoctivated:Bal  sender s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.ctivated  e(u3.!riteine:Y5currio el Evento ctivatedY;  End Su(  Private  Su(  EventoPaint:Bal  sender  s  5('ect, Bal  e  sSstem.!indo"s.Forms.PaintEventr3s; Aandles #Base.Paint

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    38/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /8-

      e(u3.!riteine:Y5currio el Evento PaintY;  End Su(  Private  Su(  #ostrar5troFormulario:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.Eventr3s; Aandles (tn#ostrarForm.6lic%  im o('Form s $e" Form:;  o('Form.So":;  End Su(

      Private Su( Eventoeactivate:Bal sender s 5('ect, Bal e s  Sstem.Eventr3s; Aandles#Base.eactivate  e(u3.!riteine:Y5currio el Evento eactivatedY;  End Su(  Private  Su(  Evento6losin3:Bal  sender  s  5('ect, Bal  e  sSstem.6omponent#odel.6ancelEventr3s; Aandles #Base.6losin3  e(u3.!riteine:Y5currio el Evento 6losin3Y;  End Su(  Private  Su(  Evento6losed:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.6losed  e(u3.!riteine:Y5currio el Evento 6losedY;  End Su(

    L. Escri(ir el procedimiento mane'ador de evento asociado al (otón, eli3iendo para ellode la lista de o('etos MBtn#ostrarFormN de la lista de eventos el evento M6lic%N ,lue3o cama(iar el nom(re del procedimietno pro3rmar como si3ue+

    Private Sub %ostrar&tro6ormulario(ByVal sender As System.&bject, ByVal e As System.EventArgs andles btn%ostrar6orm."lic1  im obj6orm As Ne) 6orm(  obj6orm.So)(

      End Sub

    . 6onfi3urar frmEvento como el formulario de inicio.8. Qra(ar e'ecutar la aplicación pulsando F.

    Figura 2.11 entana con el resultado de la e'ecucuión del emo0

    . Para o(servar la ocurrencia de eventos es necesario visuali7ar la ventana de salidade isual Estudio +$E) &ue se u(ica en la parte inferior del IE. Si no est= visi((ledel #enu MPro'ectN, seleccioanr M5ter !indo"sN lue3o ele3ir M5utputN

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    39/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /-

    Figura 2.12 entana de salida del emo0

    C!+ig! +e# !r%u#ari!Pu(lic 6lass frmEvento  Inerits Sstem.!indo"s.Forms.Form  Private  Su(  EventoDesi7e:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.Desi7e  e(u3.!riteine:Y5currio el Evento Desi7eY;  End Su(  Private  Su(  Eventooad:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.oad

      e(u3.!riteine:Y5currio el Evento oadY;  End Su(  Private  Su( Eventoctivated:Bal  sender s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.ctivated  e(u3.!riteine:Y5currio el Evento ctivatedY;  End Su(  Private  Su(  EventoPaint:Bal  sender  s  5('ect, Bal  e  sSstem.!indo"s.Forms.PaintEventr3s; Aandles #Base.Paint  e(u3.!riteine:Y5currio el Evento PaintY;  End Su(  Private Su( Eventoeactivate:Bal sender s 5('ect, Bal e s  Sstem.Eventr3s; Aandles#Base.eactivate

      e(u3.!riteine:Y5currio el Evento eactivatedY;  End Su(  Private  Su(  Evento6losin3:Bal  sender  s  5('ect, Bal  e  sSstem.6omponent#odel.6ancelEventr3s; Aandles #Base.6losin3  e(u3.!riteine:Y5currio el Evento 6losin3Y;  End Su(  Private  Su(  Evento6losed:Bal  sender  s  5('ect, Bal  e  s  Sstem.Eventr3s; Aandles#Base.6losed  e(u3.!riteine:Y5currio el Evento 6losedY;  End Su(End 6lass

    7.2 TRA(AANDO CON E,ENTOS DE TECADO

    os eventos de teclado ocurren cada ve7 &ue se presiona una tecla so(re el formulario.Estos son tres+ Geo"sn, GePress Ge

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    40/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 90-

    7.2.1 Mane*an+! "ec#as si%'#es

    Para mane'ar teclas simples de(emos escri(ir códi3o en el evento e$'ress  delformulario , el cal tiene un par=metro e  de tipo GePressEventr3s &ue contieneinformación so(re el evento de tecla simple.

    El Evento GePressed ocurre al pulsar un car

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    41/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 91-

    De%! >8.-

    Esta demostración tiene por o('etivo reconocer los eventos del teclado de un formularioen especial el GePress el Ge

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    42/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 92-

      Private  Su(  #ostrar)eclaSimple:Bal  sender  s  5('ect, Bal  e  sSstem.!indo"s.Forms.GePressEventr3s; Aandles #Base.GePress  im cod s Inte3er  T sc:e.Ge6ar;  Select 6ase cod  6ase 0 )o /1  #essa3eBo?.So":YPulsaste un caracter no imprimi(leY, YEvento GePress - 6odi3o Y _ cod;  6ase /2 )o 9, 8 )o L9, 1 )o L

      #essa3eBo?.So":YPulsaste un sim(olo T Y _ e.Ge6ar, YEvento GePress - 6odi3o Y _ cod;  6ase 98 )o   #essa3eBo?.So":YPulsaste un d*3ito T Y _ e.Ge6ar, YEvento GePress - 6odi3o Y _ cod;  6ase L )o 0  #essa3eBo?.So":YPulsaste un caracter alfa(etico en mascula T Y _ e.Ge6ar, YEventoGePress - 6odi3o Y _ cod;  6ase  )o 122  #essa3eBo?.So":YPulsaste un caracter alfa(etico en minuscula T Y _ e.Ge6ar, YEventoGePress - 6odi3o Y _ cod;  6ase 12/ )o 2  #essa3eBo?.So":YPulsase un caracter especial T Y  _ e.Ge6ar, YEvento GePress -6odi3o Y _ cod;

      End Select  End Su(

    . 6onfi3urar frm)ecla como el formulario de inicio e'ecutar la aplicación.

    Figura 2.10 entana con el resultado de la e'ecución del emo0L

    C!+ig! +e# !r%u#ari!Pu(lic 6lass frm)ecla  Inerits Sstem.!indo"s.Forms.Form  Private  Su(  #ostrar)eclaE?tendida:Bal  sender  s  5('ect, Bal  e  sSstem.!indo"s.Forms.GeEventr3s; Aandles #Base.Ge

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    43/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9/-

      #essa3eBo?.So":YPulsaste la tecla T Y  _ e.Geata.)oStrin3, YEvento Ge

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    44/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 99-

    El e'emplo presenta un simple formulario en el cual al pasar el mouse por ste se vamostrando las coordenadas en la (arra de t*tulo se va di(u'ando un c*rculo de radio 20.Para esto de(emos reali7ar los si3uietnes pasos+

    1. 6rear una plicación !indo"s en isual Basic .$E) llamado De%! >9.

    2. En la ventana de e?plorador de soluciones seleccioanr el arcivo Form1 en laventana de propiedades cam(iar la propiedad Filene$ame a Fr%in"a

    0. En el ise>ador de Formularios !indo"s, seleccioanr el formulario cofi3urar suspropiedades , tal como se muestra en el si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  Form1 $ame

    )e?tStarPosition

    FrmPintaPulsa cual&uier tecla6enterScreen

    ?. En la ventana e?plorador de soluciones dar clic en el (otón Mie 6odeN.

    7. Escri(ir el procedimiento mane'ador de evento Dibu*aCircu#!  asociado al

    formulario eli3iendo para elllo de la lista de o('etos MBase 6lass EventsN de alista de eventos el evento M#ouse#oveN lue3o cam(iar el nom(re delprocedimiento pro3ramar como si3ue+

      Private  Su(  i(u'a6irculo:Bal  sender  s  5('ect, Bal  e  sSstem.!indo"s.Forms.#ouseEventr3s; Aandles #Base.#ouse#ove  #e.)e?t T Y6oordenadas K T Y _ e.K _ Y, ] T Y _ e.]  im rec s $e" Dectan3le:e.K - , e.] - , 10, 10;  #e.6reateQrapics.FillEllipse:Bruses.Blue, rec;  End Su(

    8. 6onfi3urar frmPinta como el formulario de inicio

    9. Qra(ar e'ecutar la aplicación

    :. Proceder a pasar el #ouse por el formulario sinpresionar nin3n (otón reali7ar un di(u'o , por e'emplo su nom(re.

    FI;URA 2.1? entana con el resultado de la e'ecución delemo0

    C!+ig! +e# !r%u#ari!Pu(lic 6lass frmPinta  Inerits Sstem.!indo"s.Forms.Form  Private Su( i(u'a6irculo:Bal sender s 5('ect, Bal e s Sstem.!indo"s.Forms.#ouseEventr3s;

    Aandles #Base.#ouse#ove  #e.)e?t T Y6oordenadas K T Y _ e.K _ Y, ] T Y _ e.]  im rec s $e" Dectan3le:e.K - , e.] - , 10, 10;  #e.6reateQrapics.FillEllipse:Bruses.Blue, rec;  End Su(End 6lass

    9. TRA(AANDO CON CUADROS DE DIAO;O

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    45/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9-

    En esta sección aprenderemos el mane'o de los cuadros de dialo3os , desde comocrearlos mostrarlos , asta como 3uardar o recuperar el resultado de la iteracciónso(re el cuadro de di=lo3o.

    :.1 Crean+! un cua+r! +e +i

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    46/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9L-

    N!"a.- lconfi3urar la propiedad ialo3Desult de un (otón, si esto estuviere asociado a unporcedimiento &ue mane'a el evento clic del (otón , primero se e'ecuta dico procedimiento,lue3o se 3uarda el resultado se cierra autom=ticamente el di=lo3o.

    :.? Recu'eran+! e# Resu#"a+! +e# cua+r! +e +iesult

    2. #ediante el valor devuelto por el mtodo So"ialo3 del formulario &ue se mostrócomo cuadro de di=lo3o

    im &bjialogo as Ne) 6rmialogo 78 objialgoSo)ialog; . ialogo>esulta .&J 9en 0 intrucciones #ara cuando el resultado es ace#tarElse

    0 intrucciones #ara cuando el resultado es cancelarEnd i8

    De%! >:.-

    Esta demostración tiene por o('etivo, ense>ar a tra(a'ar con formularios de tipocuadros de di=lo3os reali7ar tareas como creación , visuali7ación confi3uración depropiedades para 3uardar recuperar el resultado del di=lo3o.

    El e'emplo tra(a'a con / formularios, el formulario inicial permite llevar los datospersonales tiene / (otones , los dos primeros muestran dos cuadros de di=lo3odonde se in3resan los datos acadmicos la(orales , el tercer (otón permite ver enun cuadro de mensa'e el resumen de la situación de la persona de acuerdo a losdatos in3resados . Para lo cual de(emos reali7ar los si3uientes pasos+

    1. 6rear una plicación !indo"s en isual Basic .$E) llamado De%!>:.

    2. En la ventna de e?plorador de soluciones seleccionar el arcivo Form1 en laventana de propiedades cam(iar la propiedad Filene$ame a Fr%ers!na#

    /. En el ise>ador de Formularios !indo"s, arrastrar 2 controles a(el , 2 )e?tBo? / Button desde el )oolBo? , acia el formulario confi3urar las propiedades , talcomo se muestra en el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  

    Form1 $ame)e?tFormBorderStle#a?imi7edBo?#inimi7edBo?StarPositionSi7e

    FrmPersonalatos PersonalesFi?edSin3leFalseFalse6enterScreen!idtT/00, Aei3tT200

    a(el1 $ame)e?t

    (l$ame$om(re

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    47/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9-

     utoSi7eocation

    )rueKT/2 , ]T/2

    a(el2 $ame)e?t

     utoSi7eocation

    (lireccionirección)rueKT/2 , ]T2

    )e?tBo?1 $ameocationSi7e

    )?t$om(reKT109, ]T 28!idtT 10, Aei3tT 20

    )e?tBo?2 $ameocationSi7e

    )?tireccionKT109, ]T L8!idtT 10, Aei3tT 20

    Button1 $ame)e?t6ursor ocationSi7e

    Btncademico cadmicoAandKT/, ]T 11L!idtT L, Aei3tT 2/

    Button2 $ame)e?t6ursor ocationSi7e

    Btna(orala(oralAandKT111, ]T 11L!idtT L, Aei3tT 2/

    Button/ $ame)e?t6ursor ocationSi7e

    BtnDesumenresumenAandKT18, ]T 11L!idtT L, Aei3tT 2/

    9. >adir un se3undo formulario @ del men MPro'ectN ele3ir Mdd !indo"s FormN ,

    escri(ir como nom(re r%Aca+e%ic!  clic en M5penN.. En el dise>ador de Formularios !indo"s rrastar / controles a(el, / )e?tBo? 2

    Button desde el )oolBo?, acia el formulario confi3urar las propiedades , talcomo se muestra en el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  Frmcademico )e?t

    FormBorderStle6ontrolBo?#a?imi7edBo?

    #inimi7edBo?StarPositionSi7e

    atos cadmicosFi?edialo3FalseFalse

    False6enterScreen!idtT/00, Aei3tT220

    a(el1 $ame)e?t

     utoSi7eocation

    (l$om(re$om(re)rueKT/2 , ]T29

    a(el2 $ame)e?t

    (lInstituciónInstitución

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    48/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 98-

     utoSi7eocation

    )rueKT/2 , ]TL9

    a(el/ $ame)e?t

     utoSi7eocation

    (l6arrera6arrera)rueKT/2 , ]T109

    )e?tBo?1 $ameocationSi7eDead5nl

    )?t$om(reKT109, ]T 20!idtT 10, Aei3tT 20)rue

    )e?tBo?2 $ameocationSi7e

    )?tInstitucionKT109, ]T L0!idtT 10, Aei3tT 20

    )e?tBo?/ $ameocationSi7e

    )?t6arreraKT109, ]T 100!idtT 10, Aei3tT 20

    Button1 $ame

    )e?t6ursor ialo3DesultocationSi7e

    Btnceptar 

     ceptar Aand5GKT/L, ]T 198!idtT L, Aei3tT 2/

    Button2 $ame)e?t6ursor ialo3DesultocationSi7e

    Btn6ancelar 6ancelar Aand6ancelKT180, ]T 198!idtT L, Aei3tT 2/

    L. >adir un tercer !r%u#ari!  @ del men MPro'ectN ele3ir Mdd !indo"s FormN ,escri(ir como nom(re r%#ab!ra#  clic en M5penN.

    . En el dise>ador de Formularios !indo"s rrastar / controles a(el, / )e?tBo? 2Button desde el )oolBo?, acia el formulario confi3urar las propiedades , talcomo se muestra en el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  Frma(oral )e?t

    FormBorderStle6ontrolBo?

    #a?imi7edBo?#inimi7edBo?StarPositionSi7e

    atos a(oralesFi?edialo3False

    FalseFalse6enterScreen!idtT/00, Aei3tT220

    a(el1 $ame)e?t

     utoSi7eocation

    (l$om(re$om(re)rueKT/2 , ]T29

    a(el2 $ame (lEmpresa

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    49/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9-

    )e?t utoSi7eocation

    Empresa)rueKT/2 , ]TL9

    a(el/ $ame)e?t

     utoSi7e

    ocation

    (l6ar3o6ar3o)rue

    KT/2 , ]T109)e?tBo?1 $ameocationSi7eDead5nl

    )?t$om(reKT109, ]T 20!idtT 10, Aei3tT 20)rue

    )e?tBo?2 $ameocationSi7e

    )?tEmpresaKT109, ]T 100!idtT 10, Aei3tT 20

    )e?tBo?/ $ameocationSi7e

    )?t6ar3oKT109, ]T 100!idtT 10, Aei3tT 20

    Button1 $ame)e?t6ursor ialo3DesultocationSi7e

    Btnceptar  ceptar Aand5GKT/L, ]T 198!idtT L, Aei3tT 2/

    Button2 $ame)e?t6ursor ialo3Desultocation

    Si7e

    Btn6ancelar 6ancelar Aand6ancelKT180, ]T 198

    !idtT L, Aei3tT 2/8. ado los / formularios re3resar a r%rinci'a#  dando do(le clic

    so(re nom(re en la ventana del e?plorador de soluciones

    . En la ventana e?plorador de soluciones dar clic en el (otón Mie" codeN

    10. eclarar dos varia(les ló3icas de(a'o de la 7ona con la eti&ueta M!indo"s formesi3ner 3enerated codeN+

    Private Estudia, 9rabaja as boolean

    11. 6rear un procedimiento llamado M!s"rarF!r%u#ari!Aca+e%ic!  &ue mane'e elevento M6lic%N del (otón MBtnceadmicoN

      Private Sub %ostrar6ormularioAcademico(ByVal sender As System.&bject, ByVale As System.EventArgs andles btnAcademico."lic1  im objAcademico As Ne) 8rmAcademico(  objAcademico.t'tNombre.9e't ; t'tNombre.9e't  78 objAcademico.So)ialog ; ialog>esult.&J 9en  Estudia ; 9rue  Else  Estudia ; 6alse  End 78  End Sub

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    50/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 0-

    12.6rear el procedimiento llamado M!s"rarF!r%u#ari!ab!ra#  &ue mane'e el eventoM6lic%N del (otón M(tna(oralN

      Private Sub %ostrar6ormulario+aboral(ByVal sender As System.&bject, ByVal e AsSystem.EventArgs andles btn+aboral."lic1  im obj+aboral As Ne) 8rm+aboral(  obj+aboral.t'tNombre.9e't ; t'tNombre.9e't  9rabaja ; (obj+aboral.So)ialog ; ialog>esult.&J  End Sub

    1/.6rear el procedimiento llamado M!s"rarCua+r!Resu%en &ue mane'e el eventoMclic%N del (otón M(tnDesumenN

      Private Sub %ostrar"uadro>esumen(ByVal sender As System.&bject, ByVal e As System.EventArgs andles btn>esumen."lic1  im %ensaje As Ne) System.9e't.StringBuilder(  %ensaje.A##end(:Nombre ; :  %ensaje.A##end(t'tNombre.9e't  %ensaje.A##end("r(3H  %ensaje.A##end(:Estudia ; :  %ensaje.A##end(Estudia.9oString  %ensaje.A##end("r(3H  %ensaje.A##end(:9rabaja ; :

      %ensaje.A##end(9rabaja.9oString  %essageBo'.So)(%ensaje.9oString, :>esumen de atos:, %essageBo'Buttons.&J,%essageBo'7con.7n8ormation  End Sub

    19.6onfi3urar frmPrincipal como el formulario de inicio

    1.Qra(ar e'ecutar la aplicación pulsando F

    Figura 2.17 ventana de formulario de inicio frmPersonal del emo08

    1L. In3resar un nom(re una dirección en el formulario de datos Personales clic enel (otón Mcadem*coN, entonces se mostrar= el cuadro de di=lo3o de atos

     cadmicos similar a la fi3ura 2.1L

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    51/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 1-

    Figura 2.18 entana del cuadro de dialo3o frmcademico del emo08

    1.En el cuadro de di=lo3o si estudia al3o in3resar el nom(re de la institución dondeestudia la carrera &ue si3ue ,lue3o MceptarN sino McancelarN.

    18.De3resando al formulario de datos Personales, clic en el (o[ton Ma(oralN entonces

    se mostrar= el cuadro de di=lo3o de atos a(orales , similar a la fi3ura 2.1.

    Figura 2.19 entana del cuadro de di=lo3o frma(oral del emo081.En el cuadro de di=lo3o si tra(a'a en al3una empresa in3resar el nom(re de la

    empresa el car3o &ue ocupa lue3o MceptarN sino M6ancelarN

    20.De3resando al formulario de datos Personales , clic en el (otón MDesumenN,entonces se mostrar= el cuadro de Desumen de atos, similar a la fi3ura 2.18

    Figura 2.1:  cuadro de mensa'e de resumen de atos delemo08

    21.Finalmente , cierre el formulario de atos Personales para finali7ar la aplicación.

    E Có+ig! +e# !r%u#ari! De%!>:

    Public "lass 8rmPersonal

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    52/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 2-

      7nerits System.esult.&J  End Sub

      Private Sub %ostrar"uadro>esumen(ByVal sender As System.&bject, ByVal e As 

    System.EventArgs andles btn>esumen."lic1  im %ensaje As Ne) System.9e't.StringBuilder(  %ensaje.A##end(:Nombre ; :  %ensaje.A##end(t'tNombre.9e't  %ensaje.A##end("r(3H  %ensaje.A##end(:Estudia ; :  %ensaje.A##end(Estudia.9oString  %ensaje.A##end("r(3H  %ensaje.A##end(:9rabaja ; :  %ensaje.A##end(9rabaja.9oString  %essageBo'.So)(%ensaje.9oString, :>esumen de atos:, %essageBo'Buttons.&J,%essageBo'7con.7n8ormation  End SubEnd "lass

    9.IMEMENTANDO LERENCIA DE FORMUARIOS

    En esta ltima sección del cap*tulo trataremos so(re una de las nueva caracter*ticas&ue nos ofrece el +$et Frame"or% como es la erencia de formularios . En realidad lamaoria de clases del +$E) Frame"or% pueden reusarse mediante la erencia, peroen esta parte sólo veremos la erencia de formularios.

    En esta parte aprenderemos las dos formas de crear erencia , primero por códi3o lue3o usando el cuadro de di=lo3o Selector de Aerencia de isual Estudio .$et +

     dem=s veremos como actuali7ar los formularios eredados cuando ocurrencam(ios en el formulario (ase.

    9.1. CREANDO LERENCIA MEDIANTE RO;RAMACION#ucas veces &ueremos reusar un formulario a creado en la aplicación paraconstruir otros formularios , con isual Basic L esto no era posi(le, en cam(io conisual Basic. $E) : en 3eneral con cual&uier len3ua'e .$E); podemos reusar lascaracter*sticas de un formulario (ase e?tender nuevas carcteristicas en los!r%u#ari!s +eriva+!s.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    53/59

    Practicas de Sistemas de Información 2008B\2. Formularios - /-

    Para crear erencia mediante prop3ramación sólo (asta crear una clase &ue eredede un formulario espec*fico mediane el uso de la sentencia Ineri"s, tal como semuestra en la si3uiente sinta?is+Public "lass 6ormularioerivado7nerits 6ormularioBaseEn "lass

    N!"a.- En isual Basic. $E) no e?iste erencia mltiple , es decir una clase derivada :i'o;no puede eredar de dos o m=s clsaes (ases :padres;. Por tanto , un formulario sólo puedeeredar de otro formulario,

    9.2 CREANDO LERENCIA MEDIANTE E ,ISUA STUDIO..NET

    Si estamos desarrollando aplicaciones para !indo"s mediante el isual Estudio.$et ,la forma m=s f=cil de crear erencia es usar el cuadro de di=lo3o Selector de erencia,el cual permite crear erencia seleccionando el formulario (ase a partir del cual secrear= uno nuevo.

    Para crear erencia de formularios mediante el cuadro de di=lo3o Selector deAerencia de isual Studio realices los si3uientes pasos+

    1. 6rear el formulario (ase conteniendo el dise>o el códi3o &ue se &uiere reusar en otros formularios.

    2. 6onfi3urar el alcance de los controles del formulario (ase confi3urando la propiedadM!+iiers en uno de los valores de acuerdo a las si3uiente ta(la+

    A#cance In"eracción c!n e# !r%u#ari! ere+a+!

    Pu(lic El control se puede mover cam(iar de tama>o.El control permite elacceso interno por parte de la clase &ue lo declara el acceso e?ternopor parte de otras clases.

    Protected El control se puede mover cam(iar de tama>o. Permite el acceso

    interno por parte de la clase &ue lo declara de cual&uier clase &ue seerede de la clase primaria , pero no permite el acceso por parte declases e?ternas.

    Friend El control se muestra en el formulario , sus propiedades son visi(les enla ventana de propiedades . Sin Em(ar3o , todos los aspectos delcontrol se consideran de solo lectura . $o es posi(le mover ni cam(iar de tama>o , el control, ni cam(iar sus propiedades .Sólo puedenacceder al control otros miem(ros del ensam(lado &ue lo contiene.

    Private El control semuestra en el formulario , sus propeidades son visi(les enla ventana de propiedades . si em(ar3o todos los aspectos del control

    se consideran de solo lectura . $o es posi(le mover ni cam(iar detama>o el control, ni cam(iar sus propiedades .El control solo permiteel acceso a la clase &ue lo declara.

    /. Qra(ar compilar el proecto donde se envuentra el formulario (ase.

    9. En el men MPro'ectN, ele3ir Mdd Inerited Form`N

    . Se mostrar= el cuadro de di=lo3o de 3re3ar $uevo Elemento , en l escri(ir elnom(re del nuevo formulario clic en M5penN.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    54/59

    Practicas de Sistemas de Información 2008B\2. Formularios - 9-

    L. Se mostrar= el cuadro de di=lo3o Selector de erencia , como se visuali7a en lasi3uiete fi3ura

    Figura 2.1=  cuadro de di=lo3o selector de erencia

    . Si el formulario eredado se encuentra en el proecto actual , seleccionarlo de lalista, sino clic en MBro"seN a(rir el arcivo donde se a 3ra(ado elformulario.

    8. Finalmente cicl en M5GN visuali7ar el nuevo formulario creado.

    9.0 ACTUAIANDO OS CAM(IOS DE FORMUARIO (ASE

    =

     Esta demostración tiene por o('eto ense>ar a crear erencia de formulario usando el

    cuadro de di=lo3o del selector de Aerencia isual de isual Estudio .$E).  El e'emplo tra(a'a con formularios , el formulario inicial presenta un men conal3unos persona'es famosos de la computación como Ditcie, )ompson Gildall.ue3o se crea un formulario (ase para todos los persona'es &ue inclue su nom(re ,foto descripción de persona'e lue3o se crean / formularios eredados:uno paracada persona'e; Para lo cual de(emos reali7ar los si3uientes pasos+

    1. 6rear una plicación !indo"s en isual Basic .$E) llamado De%!>=.

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    55/59

    Practicas de Sistemas de Información 2008B\2. Formularios - -

    2. En la ventana de e?plorador de soluciones seleccioanr el arcivo Form1 en laventana de propiedades cam(iar la propiedad Filene$ame a Fr%Menu

    /. En el ise>ador de Formularios !indo"s, arrastrar / controles in%a(el del)oolBo? , acia el formulario confi3urar las propiedades , tal como se muestraen el si3uiente cuadro.

    Ob*e"! r!'ie+a+ ,a#!r  

    Form1 $ame)e?tFormBorderStle#a?imi7edBo?#inimi7edBo?StarPositionSi7e

    Frm#enuPersona'es famosos de la computaciónFi?edSin3leFalseFalse6enterScreen!idtT/00, Aei3tT/00

    in%a(el1 $ame)e?t

     utoSi7eFont

    ocation

    %lDitcieDitcie)rueSi7eT12

    KT118 , ]Tin%a(el2 $ame)e?t

     utoSi7eFontocation

    %l)ompson)ompson)rueSi7eT12KT109 , ]T12

    in%a(el/ $ame)e?t

     utoSi7eFontocation

    %lGildallGildall)rueSi7eT12KT121 , ]T1

    9. >adir un se3undo formulario @ del men MPro'ectN ele3ir Mdd !indo"s FormN ,escri(ir como nom(re r%ers!na*e  clic en M5penN.. En el ise>ador de formularios !indo"s , arrastrar dos controles a(el un

    Pi?tureBo? del )oolBo? acia el formulario confi3urar las propiedades , tal comse muestra en el si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  frmPersona'e )e?t

    Bac%6olor FormBorderStle#a?imi7edBo?

    #inimi7edBo?Si7e

    Persona'es famosos de la computación &uaFi?edSin3leFalse

    False!idtT/00, Aei3tT/20a(el1 $ame

    #odifiers)e?t)e?tli3nFontFore6olor ocation

    l($om(reProtected

    #idle6enter Si7eT12BlueKT29 , ]T1L

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    56/59

    Practicas de Sistemas de Información 2008B\2. Formularios - L-

    Si7e !idtT20, Aei3tT/0a(el1 $ame

    #odifiers)e?t)e?tli3nFont

    Fore6olor ocationSi7e

    l(escripcionProtected

    #idle6enter Si7eT12

    DedKT29 , ]T290!idtT20, Aei3tT/0

    PictureBo?1 $ame#odifiersSi7e#ode6ursor ocationSi7e

    PicFotoProtectedStrecIma3eAandKT80 , ]TL!idtT1/, Aei3tT1

    L. Escri(ir un procedimiento &ue permita cerrar el formulario al dar clic al ima3enpara &ue pueda ser reusada.

    Private Sub "errar(ByVal sender As System.&bject, ByVal e As System.EventArgs andles #ic6oto."lic1  %e."lose(  End Sub

    . Qra(ar compilar la plicación , del men MBuildN Eli3ir MBuild SoluctionN.8. 6rear el primer formulario eredado @ del men MPro'ectN ele3ir Mdd IneritedFormN,

    escri(ir como nom(re frmDitcie clic en M5penN. el cuadro de di=lo3o del Selector de Aerencia ele3ir el formulario MfrmPersona'eN

    clic en M5GN.10.#odificar la propiedades de los controles del formulario frmDitcie como se muestra

    en el si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  (l$om(re )e?t ennies Ditcie(lescripcion )e?t 6reador de en3ua'e 6 de

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    57/59

    Practicas de Sistemas de Información 2008B\2. Formularios - -

    1.el cuadro de di=lo3o del Selector de Aerencia ele3ir el formulario MfrmPersona'eN clic en M5GN.

    1L.#odificar la propiedades de los controles del formulario frmGildall como se muestraen el si3uiente cuadro+

    Ob*e"! r!'ie+a+ ,a#!r  

    (l$om(re )e?t Qar Gildall(lescripcion )e?t 6reador de Sistema operativo 6P#PicFoto Ima3e Gildall.'p3.

    1. De3resar al formulario frm#enu escri(ir códi3o para mostrar los tres formularioseredados.

      Private  Su(  #ostrarFormularioDitcie:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lDitcie.in%6lic%ed  im o('Ditcie s $e" frmDitcie:;  o('Ditcie.So"ialo3:;  End Su(

      Private  Su(  #ostrarFormulario)ompson:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%l)ompson.in%6lic%ed  im o(')ompson s $e" frm)ompson:;  o(')ompson.So"ialo3:;  End Su(

      Private  Su(  #ostrarFormularioGildall:Bal  sender  s  Sstem.5('ect, Bal  e  sSstem.!indo"s.Forms.in%a(elin%6lic%edEventr3s; Aandles l%lGildall.in%6lic%ed  im o('Gildall s $e" frmGildall:;  o('Gildall.So"ialo3:;

      End Su(18.6onfi3urar frm#enu como el formulario de inicio.

    1.Qra(ar e'ecutar la aplicación pulsando F

  • 8/18/2019 LD1 INTRODUCCION A WINDOWS FORM.doc

    58/59

    Practicas de Sistemas de Informaci�