0307 interface visual jbutton

Upload: santy-castano

Post on 06-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 0307 Interface Visual JButton

    1/13

    Interface Visual (Componente  JButton

    El tercer control visual de uso muy común es el quclase JButton Este control visual muestra un !ot"n

    El proceso para a#adir !otones a un control J$ramea#adir controles de tipo J%a!el

    &'ora veremos la captura de eventos con los controno de los eventos ms comunes es cuando 'acemun !ot"n

    Java implementa el concepto de interfaces para pom*todos de una clase e+istente a una clase desa

    nosotros

  • 8/17/2019 0307 Interface Visual JButton

    2/13

    Interface Visual (Componente  JButton

    Problema 1:

    Confeccionar una ventana que muestre u

    Cuando se presione ,nali-ar la e.ecuciprograma Java

  • 8/17/2019 0307 Interface Visual JButton

    3/13

    Interface Visual (Componente  JButton

    import .ava+swing/0

    import .avaawtevent/0

    pu!lic class $ormulario e+tends J$rame implements &ction%isten

      JButton !oton20

      pu!lic $ormulario() 1

      set%ayout(null)0  !oton23new JButton(4$inali-ar4)0

      !oton2setBounds(56678967266756)0

      add(!oton2)0

      !oton2add&ction%istener(t'is)0

      :

  • 8/17/2019 0307 Interface Visual JButton

    4/13

    Interface Visual (Componente  JButton

     pu!lic void action;erformed(&ctionEvent e) 1  if (egetSource()33!oton2) 1

      Systeme+it(6)0

      :

      :

     

    pu!lic static void main(String967596)0

      formulario2setVisi!le(true)0

      :

    :

  • 8/17/2019 0307 Interface Visual JButton

    5/13

    Interface Visual (Componente  JButton

    %a mecnica para atrapar el clic del o!.eto de la cse 'ace mediante la implementaci"n de una intinterface es un protocolo que permite la comunicdos clases na interface contiene uno o ms cm*todos7 pero no su implementaci"n ;or e.emplo&ction%istener tiene la siguiente estructura?

    interface ActionListener {

      public void actionPerformed(ActionEvent e

    }

  • 8/17/2019 0307 Interface Visual JButton

    6/13

    Interface Visual (Componente  JButton

    %uego las clases que implementen la interface &cde!ern especi,car el algor@tmo del m*todo action

    Aediante el concepto de interfaces podemos 'acela clase JButton se puede llamar a un m

    implementamos en nuestra clase;ara indicar que una clase implementar una 'acemos en la declaraci"n de la clase con la sinta

    public class Formulario etends JFrame im

    ActionListener {

  • 8/17/2019 0307 Interface Visual JButton

    7/13

    Interface Visual (Componente  JButton

    Con esto estamos diciendo que nuesimplementa la interface &ction%istenestamos o!ligados a codi,car el

    action;erformede,nimos un o!.eto de la clase JButto

      JButton boton1!

  • 8/17/2019 0307 Interface Visual JButton

    8/13

    Interface Visual (Componente  JButton

     En el constructor creamos el o!.eto de la clase JButton y medi

    del m*todo add&ction%istener le pasamos la referencia del o!.JButton utili-ando la pala!ra clave t'is (t'is almacena la direccidonde se almacena el o!.eto de la clase J$rame7 luego mediantepodemos llamar al m*todo action;erformed)?

      public Formulario() {

      setLa"out(null)!  boton1#ne$ JButton(%Finali&ar%)!

      boton1'setBounds(*+,*1*)!

      add(boton1)!

      boton1'addActionListener(t-is)!

      }

  • 8/17/2019 0307 Interface Visual JButton

    9/13

    Interface Visual (Componente  JButton

      El m*todo action;erformed (este m*todo de &ction%istener de!e implementarse o!ligatoriamede no codi,carlo o equivocarnos en su nom!re amensa.e de error en tiempo de compilaci"n programa

    El m*todo action;erformed se e.ecutar cad'agamos clic so!re el o!.eto de la clase JButton

    %a interface &ction%istener y el o!.eto de la clase que llega como parmetro estn de,nidos en el pa

    import .ava'a$t'event'/!

  • 8/17/2019 0307 Interface Visual JButton

    10/13

    Interface Visual (Componente  JButton

    Es decir que cada ve- que se presiona el !ot"n desde la clase Jal m*todo action;erformed y reci!e como parmetro un o!.e&ctionEvent

    En el m*todo action;erformed mediante el acceso al m*todo o!.eto que llega como parmetro podemos anali-ar que !ot"n s

      public void actionPerformed(ActionEvent e) {

      if (e'0etource()##boton1) {

      "stem'eit()!

      }

      }

  • 8/17/2019 0307 Interface Visual JButton

    11/13

    Interface Visual (Componente  JButton

    Si se presion"n el !oton2 luego el if sverdadero y por lo tanto llamando ae+it de la clase System se ,nali-a la e

    del programa%a main no var@a en nada con repro!lemas anteriores

  • 8/17/2019 0307 Interface Visual JButton

    12/13

    Interface Visual (Componente  JButton

    Problema +:

    Confeccionar una ventana que conte

    o!.etos de la clase JButton con las 4247 484 y 454 &l presionarse cam!iadel J$rame indicando cul !ot"n se pre

  • 8/17/2019 0307 Interface Visual JButton

    13/13

    Interface Visual (Componente  JButton

    Problemas propuestos

    isponer dos o!.etos de la clase JBu

    las etiquetas? 4var"n4 y 4mu.er47 al premostrar en la !arra de t@tulos del Jetiqueta del !ot"n presionado