Mostrando entradas con la etiqueta MouseExited. Mostrar todas las entradas
Mostrando entradas con la etiqueta MouseExited. Mostrar todas las entradas

martes, 4 de febrero de 2020

Diferencia entre ActionListener, keyListener, MouseListener y focusListener in java

Los eventos action listener, son eventos que se agregan a los diferentes componentes de java, no se confundan con los eventos de mouseListener o keyListener, ya que dichos eventos corresponden a diferentes acciones del usuario.

Un ActionListener, se produce al hacer click sobre el componente, o bien al dar enter siempre y cuando el componente tenga el foco.
--
/*actionListener*/
JMenuItem item = new JMenuItem("salir");
item.addActionCommand("salir");
item.addActionListener(this);

@Override
public void actionPerformed(ActionEvent e ){
   if( e.getActionCommand()=="salir" ){
      JOptionPane.showMessageDialog(null,"Adios");
      System.exit(0);
   }
}

--
Un KeyListener, se ejecuta al precionar una tecla, dependiendo el momento de su ejecucion cambara de metodo interno, tales como
 * KeyTyped(keyEvent e) se ejecuta al presionar y soltar una tecla
 * KeyPressed( keyEvent e ) se ejecuta al presionar una tecla
 * KeyReleased( keyEvent e ) se ejecuta al soltar una tecla

--
        JTextField txt = new JTextField();
        txt.addKeyListener( new KeyListener(){
            @Override
            public void keyTyped(KeyEvent e) {
                System.out.println("keyTyped");
            }
            @Override
            public void keyPressed(KeyEvent e) {
                System.out.println("keyPressed");
            }
            @Override
            public void keyReleased(KeyEvent e) {
                System.out.println("keyReleased");
            }
        });

--

un focusListener, se ejecuta cuando un componente pierde o gana el foco ( es seleccionado o desseleccionado ). sus eventos son:
 * focusGained se ejecuta al recibir o perder el foco
 * focusLost se ejecuta al perder el foco

--
  
        JTextField txt = new JTextField();
        txt.addFocusListener(new FocusListener() {
            @Override
            public void focusGained(FocusEvent e) {
                System.out.println("FocusGained");
            }

            @Override
            public void focusLost(FocusEvent e) {
                System.out.println("focusLost");
            }
        });

--

Por ultimo tenemos mouseListener, que como su nombre lo dice, los eventos del mouse, estos eventos se relacionan a las acciones que se ejecutan directamente por el mouse, La descripcion de cada uno de ello lo pueden encontrar en la entrada MouseEvent donde se puedes encontrar mas a detalle el uso del mouseListener.

--
        JTextField txt = new JTextField();
        txt.addMouseListener(new MouseListener() {
            @Override
            public void mouseClicked(MouseEvent e) {
            }

            @Override
            public void mousePressed(MouseEvent e) {
            }

            @Override
            public void mouseReleased(MouseEvent e) {
            }

            @Override
            public void mouseEntered(MouseEvent e) {
            }

            @Override
            public void mouseExited(MouseEvent e) {
            }
        });


--

Sin mas por el momento es todo por hoy, dejen su comentario y nos leemos en la proxima.

miércoles, 27 de noviembre de 2019

Eventos de mouse en java swing

Esta entrada es mas que nada para dar a conocer de manera separada el listener del mouse, ya que es algo que promete dar mucho de que hablar mas adelante...

Para hacer uso de estos metodos primero que nada es necesaro implementar la interface de actionListener y mouseListener, esto nos dara acceso a capturar los distintos eventos que componen al mouse.

MouseClicked: el cual se ejecuta al soltar el boton del mouse, esto se puede interpretar en un mouseUp por desir un ejemplo.

MousePressed: es cuando se presiona el boton del mouse, se puede interpretar como un mouseDown,

MouseReleased: ocurre cuando se suelta un boton del mouse

MouseEntered: este evento ocurre cuando el mouse entra al objeto sobre el que se esta agregando el evento.

MouseExited: Este evento se ejecuta cuando el mouse sale del objeto al que se agrego el evento.

A parte de estos métodos, existe otra interfaz que cuenta con otros eventos propios del mouse, dicha interfaz te permite capturar otros tipos de eventos durante el manejo del mouse, esta libreria se llama.

MouseMotionListener,al agregar dicha libreria te pide agregar los metodos MouseDragged, MouseMoved.

MouseDragged: Se dispara cuando el mouse esta siendo presionado y en movimiento.

MouseMoved: se dispara cuando el mouse se encuentra sobre un componente.

La implementación es la siguiente.


tabla.addMouseListener( new MouseListener() {
            @Override
            public void mouseClicked(MouseEvent e) {}
            @Override
            public void mousePressed(MouseEvent e) {}
            @Override
            public void mouseReleased(MouseEvent e) {}
            @Override
            public void mouseEntered(MouseEvent e) {}
            @Override
            public void mouseExited(MouseEvent e) {}
        });
        tabla.addMouseMotionListener( new MouseMotionListener() {
            @Override
            public void mouseDragged(MouseEvent e) {}
            @Override
            public void mouseMoved(MouseEvent e) {}
        });


Con esto damos fin  esta entrada.

No olvides dejar tu comentario en caso de que esto te sea de utilidad, o no, aun así agradeceria tu comentario al respecto.