我知道您可以通过 CSS 定义光标,如JavaFX 自定义 css 光标中所述,甚至可以像这样全局设置它:
private void setCursor(Scene scene) {
Dimension2D dim = ImageCursor.getBestSize(64, 64);
URL url;
if (dim.getWidth() > 32) {
url = getClass().getResource("/icons/64/cursor.png");
} else {
url = getClass().getResource("/icons/32/cursor.png");
}
try {
Image img = new Image(url.openStream());
scene.setCursor(new ImageCursor(img));
} catch (IOException e) {
logger.warn("Failed to load cursor icon from {}", url);
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这仅全局设置默认光标,而其他类型的光标(例如插入符号、处理)保持不变。有没有办法为 JavaFX 应用程序提供涵盖所有情况的游标集?
此外,通过上述解决方案,光标被绑定到场景,这意味着,一旦它离开场景并且例如悬停在菜单栏上,它就会恢复到操作系统中设置的默认值。有没有办法在舞台或应用程序而不是场景的级别上定义光标?
一个可以接受的答案也是:做不到。那么我就不需要再看下去了。
我正在制作一个简单的图形编辑器(即绘画程序).我没有计划任何花哨的东西,但我确实希望我的程序在进入Paint Panel时将鼠标光标更改为"+"或"O"之类的东西.就像在Photoshop或GIMP中一样.

我该怎么做?关于如何更改鼠标光标,我在AWT/Swing线程中找不到任何内容.
我正在尝试在 javaFX 中创建自定义光标。这是我的代码:
Image image = new Image("mycursor.png");
Pane pane= new Pane();
pane.setCursor(new ImageCursor(image,
image.getWidth() / 2,
image.getHeight() /2));
Run Code Online (Sandbox Code Playgroud)
Windows 8.1 的光标创建不起作用吗?