Простой вопрос - почему объект не двигается, если это объект .move()
внутри onMouseMoved()
?Я пытаюсь написать Breakout как часть упражнений Stanford 106A на iTunes U и по какой-то причине не могу заставить весло отслеживать мышь.Я java noob, так что я уверен, что это что-то действительно простое.Может кто-нибудь взглянуть на этот код?
/** Runs the Breakout program. */
public void run() {
setupBoard();
addMouseListeners();
}
/** Provides the initial GCanvas and blocks for the game */
private void setupBoard(){
this.setSize(APPLICATION_WIDTH,APPLICATION_HEIGHT);
addBricks();
paddle = new GRect(PADDLE_WIDTH, PADDLE_HEIGHT);
add(paddle, WIDTH/2-PADDLE_WIDTH/2,HEIGHT-PADDLE_Y_OFFSET);
}
public void MouseMoved(MouseEvent e){
paddle.move(e.getX()-paddle.getX(), 0);
}
private GRect paddle;
}
Я не уверен, что в этом случае уместно иметь paddle
в качестве переменной экземпляра, поскольку ее "значение" не изменяется (paddle - это всегда paddle), но если я просто определю его как новый GRect
в setupBoard
, я получу ошибку в методе MouseMoved()
.