我想在Java应用程序执行时将光标图标更改为我自定义的32x32图像。我查找并搜索,我发现的只是在JComponent上设置光标。但是,只要Java应用程序仍在运行,或者您可以说程序运行时,我希望将光标更改为指定的图标,无论它在哪里移动,浏览和单击。
非常感谢。
答案 0 :(得分:42)
标准光标图像:
setCursor(Cursor.getDefaultCursor());
用户定义的图片:
Toolkit toolkit = Toolkit.getDefaultToolkit();
Image image = toolkit.getImage("icons/handwriting.gif");
Cursor c = toolkit.createCustomCursor(image , new Point(mainPane.getX(),
mainPane.getY()), "img");
mainPane.setCursor (c);
您可以下载包含示例来源的zip:HERE
答案 1 :(得分:9)
致电Component.setCursor。 类Cursor作为一些预定义的游标。
可以创建自定义光标图像:
setCursor(Toolkit.getDefaultToolkit().createCustomCursor(
new ImageIcon("custom.png").getImage(),
new Point(0,0),"custom cursor"));
答案 2 :(得分:4)
尝试在rootPane上设置光标。
frame.getRootPane().setCursor(...);
答案 3 :(得分:1)
public void mouseEntered(MouseEvent e)
{
// set cursor for frame and its component
// this is the current frame you are using .
// You can change the this keyword with your frame name .
java.awt.Toolkit toolkit = java.awt.Toolkit.getDefaultToolkit();
Image image = toolkit.getImage("/images/mousepoint.jpg");
Cursor a = toolkit.createCustomCursor(image , new Point(this.getX(),this.getY()), "");
this.setCursor (a);
}
或者你可以参考: -
http://java23s.blogspot.in/2011/07/to-change-mouse-pointer-using-java.html
答案 4 :(得分:0)
为什么你没有一个排除JFrame的MyFrame类。它只是调用JFrame构造函数并将光标设置为您想要的光标。在我的应用程序中,我们有一个没有光标的触摸屏,所以这就是我打算实现它的方式。