JavaFX 2设置/获取光标位置

时间:2013-01-05 21:41:36

标签: java cursor position mouse javafx-2

如何在JavaFX 2中设置/获取光标的位置?我累了谷歌搜索答案,但没有发现任何有用的东西。我所能做的就是设置光标的样式。

2 个答案:

答案 0 :(得分:6)

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。不要使用com.sun。*类(除非你使用Mac,见下文)。

PS2。由于JavaFX问题似乎将在JavaFX8中修复,你不能在Mac中使用java.awt类,正如Alexander Kirov所指出的那样,在Mac中你仍然需要像这样使用com.sun类:

// 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();

答案 1 :(得分:4)

您可以将机器人用于此目的:

AWT机器人:

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

或玻璃机器人:

com.sun.glass.ui.Robot; 可以创建: com.sun.glass.ui.Application.GetApplication()createRobot();

要获取光标位置,请参阅有关java.awt.MouseInfo

的此问题的其他帖子