我正在尝试通过为游戏创建自定义光标来测试Java的新方面,但是似乎我遇到了一个问题,在我的代码中setCursor();由于未将其视为正确的代码而导致编译器错误。我遵循的是教程和不同的指南,所有这些都导致相同的问题,但我的查询没有找到答案。

Toolkit toolKit = Toolkit.getDefaultToolkit();
Image img = toolKit.getImage(getClass().getResource("/res/cursor.png"));
Point point = new Point(0, 0);
Cursor cursor = toolKit.createCustomCursor(img, point, "Cursor");
setCursor(cursor);

希望有人能帮助我,在此先感谢。
笔记:
  • 我目前正在运行最新的JRE(1.8)。
  • 收到的编译器错误如下:

  • 最佳答案

    由于MadProgrammer的最后评论,该问题得以解决:



    我遇到的问题是我使用JFrame而不是JPanel作为容器。为了修复以前的代码,我将主容器更改为JPanel,作为返回,我可以使用:JPanelName.setCursor();
    编辑:经过进一步的测试,我还发现JFrame仍然可以像前面提到的一样使用。上面我的代码的问题是我将其称为JFrame.setCursor();,这是对非静态方法的静态调用。然后,这给我的印象是我应该只使用setCursor();(如上面的查询所示)。希望这对可能对setCursor();方法有误解的人有所帮助。再次感谢MadProgrammer解决该问题。

    10-08 16:04