Domanda

How can I set/get the cursor's position in JavaFX 2?

I tired googling the answer but found nothing useful. All I can do is setting the cursor's style.

È stato utile?

Soluzione 2

You can use robot for that purpose:

AWT robot:

http://docs.oracle.com/javase/1.5.0/docs/api/java/awt/Robot.html

or glass robot:

com.sun.glass.ui.Robot; which could be created with: com.sun.glass.ui.Application.GetApplication().createRobot();

To get the cursor position, see other post for this question about java.awt.MouseInfo

Altri suggerimenti

import java.awt.MouseInfo;
// get the mouse's position
Point p = MouseInfo.getPointerInfo().getLocation();

import java.awt.Robot;
// set the mouse position
new Robot().mouseMove( x, y );

PS. DO NOT USE com.sun.* classes (unless you're using Mac, see below).

PS2. Due to a JavaFX issue which seems will be fixed in JavaFX8, you cannot use java.awt classes in Mac, so as pointed out by Alexander Kirov, in Mac you still need to use the com.sun classes like so:

// workaround for Mac only
com.sun.glass.ui.Robot robot =
       com.sun.glass.ui.Application.GetApplication().createRobot();

// getPosition of the mouse in Mac
int x = robot.getMouseX(); 
int y = robot.getMouseY();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top