Je suis en train de faire un peu de GUI Swing avec Java, et je pense que ma question est assez simple; Comment définit-on la position de la souris?Comment définir la position de la souris en Java?
Répondre
Vous devez utiliser Robot
Cette classe est utilisée pour générer des événements d'entrée du système natif aux fins de l'automatisation des tests, des démonstrations d'auto-course, et d'autres applications où le contrôle de la souris et le clavier est nécessaire. Le but principal de Robot est de faciliter les tests automatisés des implémentations de la plate-forme Java. L'utilisation de la classe pour générer des événements d'entrée diffère des événements d'enregistrement dans la file d'attente d'événements AWT ou les composants AWT en ce sens que les événements sont générés dans la file d'attente d'entrée native de la plateforme. Par exemple,
Robot.mouseMove
va réellement déplacer le curseur de la souris au lieu de simplement générer des événements de déplacement de la souris ...
Consultez la classe Robot.
Comme d'autres l'ont dit, cela peut être réalisé en utilisant Robot.mouseMove(x,y)
. Toutefois, cette solution a un impact négatif lorsque vous travaillez dans une situation multi-moniteur, car le robot fonctionne avec le système de coordonnées de l'écran principal, sauf indication contraire.
Voici une solution qui vous permet de passer une coordination globale écran à points:
public void moveMouse(Point p) {
GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
// Search the devices for the one that draws the specified point.
for (GraphicsDevice device: gs) {
GraphicsConfiguration[] configurations =
device.getConfigurations();
for (GraphicsConfiguration config: configurations) {
Rectangle bounds = config.getBounds();
if(bounds.contains(p)) {
// Set point to screen coordinates.
Point b = bounds.getLocation();
Point s = new Point(p.x - b.x, p.y - b.y);
try {
Robot r = new Robot(device);
r.mouseMove(s.x, s.y);
} catch (AWTException e) {
e.printStackTrace();
}
return;
}
}
}
// Couldn't move to the point, it may be off screen.
return;
}
Cela fonctionne-t-il sur la plate-forme Linux? –
@ Daniel - Cela fait des années que vous avez répondu ici, mais aujourd'hui je l'ai trouvé et il a résolu un problème que j'avais eu pendant plusieurs mois avec des clics de souris par inadvertance repositionner le curseur de texte. J'ai été tenté d'utiliser Robot.mouseMove jusqu'à ce que je lise votre commentaire. Bizarrement, je venais de commencer à utiliser une configuration multi-moniteurs! Puisque vous utilisez des cours avec lesquels je ne suis pas familier, j'ai été choqué que tout ce que j'avais à faire était de copier votre code, de faire quelques importations et de l'appeler. Bon travail! Merci!! – DSlomer64
- 1. Comment obtenir la position de la souris?
- 2. jQuery Définir la position de la souris (pas la position du curseur)
- 3. Comment définir la position
- 4. onMouseMove obtenir la position de la souris
- 5. XLib Lock Position de la souris (habillage de la souris)
- 6. Réglage de la position de la souris
- 7. div Position à la souris
- 8. Problème de position de la souris Javascript
- 9. Comment convertir une position de la souris en une position de caractère dans un JEditorPane en Java Swing
- 10. Comment changer le curseur en fonction de la position de la souris?
- 11. Comment stocker (et utiliser) la position actuelle de la souris?
- 12. richfaces comment détecter la position de la souris
- 13. JTable Défilement par position de la souris
- 14. Définir la position de défilement
- 15. comment définir la position d'affichage de datepicker?
- 16. Oncroll Javascript et position de la souris
- 17. images se déplacent dépendamment de la position de la souris
- 18. TextField() Définir la position caret
- 19. Position de la souris sur l'écran en flex
- 20. Vitesse de défilement avec la position de la souris
- 21. Cocoa: Obtenir la position actuelle de la souris sur l'écran
- 22. Comment faire pour définir la position du curseur de la souris à un point spécifié sur l'écran en C#?
- 23. Flash CS4, position de la tête d'image suivant la souris
- 24. Zoom sur la position de la souris avec une traduction?
- 25. Obtenir la position de la souris pendant le glisser-déposer
- 26. Définir l'image 16x16 en tant que curseur de la souris en Java
- 27. Zoom sur la position de la souris dans OpenGl
- 28. Recherche de la position actuelle de la souris dans QT
- 29. java emplacement de la souris
- 30. Comment définir la position absolue des widgets en qt
Grand, merci. Cela ressemble exactement à ce dont j'ai besoin. –