Me gustaría simular un movimiento natural del mouse en Java (yendo de aquí para allá píxel por píxel). Para hacer eso, necesito saber las coordenadas iniciales.
Encontré el método event.getX () y event.getY () pero necesito un evento ...
¿Cómo puedo conocer las posiciones sin hacer nada (o algo no visible)?
Gracias
getPointerInfo().getLocation()
devuelve la posición relativa a la pantalla. Si desea la posición relativa a su componente (como la dada por MouseListeners), puede restarlayourComponent.getLocationOnScreen()
.Container.getMousePosition()
ocasiones, +1 puede regresarnull
si el mouse se mueve demasiado rápido, usar esto evita el problema.SwingUtilities.convertPointFromScreen(MouseInfo.getPointerInfo().getLocation(), component)
MouseInfo.getPointerInfo()
puede devolver un valor nulo cuando no hay mouse o en algunas configuraciones multimon.SwingUtilities.convertPointFromScreen(..)
convierte el primer argumento en el lugar y no devuelve nada, por lo que debe escribirse de manera un poco diferente en relación con el comentario de @AndreiVajnaII para que podamos obtener elPoint
objeto.fuente
En SWT no necesita estar en un oyente para llegar a la ubicación del mouse. El objeto Display tiene el método
getCursorLocation()
.En vainilla SWT / JFace, llame
Display.getCurrent().getCursorLocation()
.En una aplicación RCP, llame
PlatformUI.getWorkbench().getDisplay().getCursorLocation()
.Para las aplicaciones SWT, es preferible utilizar
getCursorLocation()
elMouseInfo.getPointerInfo()
que otros han mencionado, ya que este último se implementa en el kit de herramientas AWT que SWT fue diseñado para reemplazar.fuente
fuente
fuente
Intente buscar en la clase java.awt.Robot. Te permite mover el mouse mediante programación.
fuente
Si está usando Swing como su capa de interfaz de usuario, puede usar un detector de movimiento del mouse para esto.
fuente
Estoy haciendo algo como esto para obtener las coordenadas del mouse usando Robot, uso estas coordenadas más en algunos de los juegos que estoy desarrollando:
fuente
Si está utilizando SWT, es posible que desee agregar un MouseMoveListener como se explica aquí .
fuente
En mi escenario, se suponía que debía abrir un cuadro de diálogo en la posición del mouse basado en una operación de GUI realizada con el mouse. El siguiente código funcionó para mí:
fuente