setLocation的greenfoot错误(mouse.getX(),mouse.getY());

时间:2012-09-06 06:10:37

标签: java greenfoot

我正在制作一个你击落鸟类的游戏。我做了一个扮演十字准线的演员,跟着鼠标。

这是生成错误的代码(setLocation是第18行):

MouseInfo mouse = Greenfoot.getMouseInfo();
setLocation(mouse.getX(), mouse.getY());

错误代码:

java.lang.NullPointerException
    at Crosshair.act(Crosshair.java:18)
    at greenfoot.core.Simulation.actActor(Simulation.java:565)
    at greenfoot.core.Simulation.runOneLoop(Simulation.java:523)
    at greenfoot.core.Simulation.runContent(Simulation.java:213)
    at greenfoot.core.Simulation.run(Simulation.java:203)

1 个答案:

答案 0 :(得分:1)

如果您在编写的代码中有空指针异常,则表示您的mouseinfo对象为null。

根据documentation

  

getMouseInfo

     

public static MouseInfo getMouseInfo()返回一个鼠标信息对象   有关鼠标状态的信息。

     

返回:有关鼠标当前状态的信息,如果是,则返回null   鼠标光标位于世界边界之外(除非被拖动)。

基本上,这意味着当调用该方法时,如果超出边界,则使用鼠标。

为了帮助您更多,请描述您希望实现的目标。