Я создаю апплет настольной игры, и обработка пользовательского ввода выглядит примерно так:
public void mousePressed(MouseEvent event) {
int row = event.getX() / (getSize().width / 8) ;
int column = event.getY() / (getSize().height / 8) ;
if(possibleMove(column, row) {
makeMove(column,row,whosTurn);
repaint();
start();
}
}
После ввода человеком компьютер выбирает ход и вызывает repaint () и start (), как этот метод.
Но экран, кажется, обновляется только после того, как компьютер сделал ход, поэтому после запуска вызывается (). Как это может произойти, так как repaint () вызывается перед start ()?
У меня есть подозрение, что это может быть из-за того, что repaint () запускает новый поток (не так ли?), Но зачем ждать start ()?
Я мог бы предоставить больше кода, если необходимо, конечно.