• Viernes 8 de Noviembre de 2024, 15:35

Autor Tema:  Duda De Eventos De Ratón  (Leído 1220 veces)

ehlcves

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Duda De Eventos De Ratón
« en: Martes 8 de Abril de 2008, 21:08 »
0
Tengo una duda que puede que sea muy tonta, pero por ahora no lo he descubierto.
Más o menos conozco los eventos del ratón con MouseMotionListener y MouseListener pero hay uno que no existe o no lo he encontrado por ahora.

Si lo que quieres que capture el ratón es cuando está el botón pulsado ¿ que método sería ? . Conozco mouseClicked que es para cuando pulsas el botón y lo sueltas, es decir que captura un click normal del ratón. Luego mousePressed que es para cuando pulsas el botón del ratón y no lo sueltas pero solo se ejecuta una vez al pulsar el ratón. Lo que yo quiero es que se esté ejecutando todo el rato que esté el botón pulsado. ¿ existe eso y no lo estoy viendo ? ¿ hay alguna forma de simularlo ? ¿ como se podría hacer ?

Como he dicho, a lo mejor es una pregunta muy tonta porque a lo mejor existe un evento como los otros dos que he puesto que lo haga, pero no lo encuentro.

Cualquier ayuda será bienvenida!

Gracias de antemano.

frealgagu

  • Miembro activo
  • **
  • Mensajes: 49
    • Ver Perfil
    • http://frealgagu.4shared.com
Re: Duda De Eventos De Ratón
« Respuesta #1 en: Lunes 21 de Abril de 2008, 05:47 »
0
En realidad no existe un método que se siga ejecutando mientras se mantiene presionado el click del mouse, lo que se puede hacer es implementar el método mouseReleased el cual se ejecuta cuando uno suelta el click del mouse.
Es decir implementar el método mousePressed de tal forma que se siga ejecutando hasta que se suelte el click del mouse y el evento sea capturado por mouseReleased.


frealgagu

  • Miembro activo
  • **
  • Mensajes: 49
    • Ver Perfil
    • http://frealgagu.4shared.com
Re: Duda De Eventos De Ratón
« Respuesta #2 en: Lunes 21 de Abril de 2008, 05:54 »
0
Cabe añadir que la única forma de utilizarlo de esta forma es utilizando hilos, aquí coloco un ejemplo.

Código: Text
  1.  
  2. class Cualquiera implements MouseListener,Runnable
  3. {
  4.   Thread hilo;
  5.   public void mousePressed(MouseListener evento)
  6.   {
  7.     hilo=new Thread(this);
  8.     hilo.start();
  9.   }
  10.   public void mouseReleased(MouseListener evento)
  11.   {
  12.     hilo=null;
  13.   }
  14.   public void run()
  15.   {
  16.     while(true)
  17.     {
  18.       //Aquí se coloca lo que se quiere seguir ejecutando mientras se mantenga el click oprimido
  19.     }
  20.   }
  21.  
  22. }
  23.  
  24.  


ehlcves

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Duda De Eventos De Ratón
« Respuesta #3 en: Miércoles 23 de Abril de 2008, 02:08 »
0
Muchísimas gracias por las dos respuestas.

No había caido en eso de usar threads ni había leído nada por internet que me pudiera dar esa clave, pero tiene mucho sentido, asi que lo probaré a ver si me funciona.

Muchas gracias de nuevo, un saludo.