如何在javaFX中创建自定义光标?

时间:2014-02-19 23:28:36

标签: java javafx windows-8.1

我正在尝试在javaFX中创建自定义游标。这是我的代码:

Image image = new Image("mycursor.png");

Pane pane= new Pane();
pane.setCursor(new ImageCursor(image,
                                image.getWidth() / 2,
                                image.getHeight() /2));

是否为Windows 8.1创建游标不起作用?

1 个答案:

答案 0 :(得分:4)

检查ImageCursor.getBestSize()方法和ImageCursor.getMaximumColors()并查看它们返回的内容,然后尝试匹配最佳大小和最大颜色的自定义光标图像。这很可能是Windows 8.1的32x32光标。

以下是ImageCursor.getBestSize() javadoc:

的引用
  

获取最接近指定的支持的游标大小   首选尺寸。如果平台没有,则返回值(0,0)   支持自定义游标。

     

注意:如果使用的图像尺寸与支持的尺寸不匹配   size(由此方法返回),实现将调整大小   图像到支持的大小。这可能会导致质量下降。

     

注意:这些值可能因操作系统和图形卡而异   和屏幕分辨率,但在撰写本文时,一个样本   对于所有请求的大小,Windows Vista计算机返回32x32   示例Mac和Linux机器将请求的大小返回到a   最大64x64。应用程序应提供32x32游标   将在所有平台上运行良好,并可能选择提供   64x64游标,用于支持它的平台。

还要确保您创建的窗格的大小不是零,并且窗格已添加到场景中,以便实际有一个窗格区域可以鼠标悬停并看到光标更改。