Итак, я пытаюсь создать видеоигру, используя Java Graphics, и мне нужно использовать MouseListener для кнопки «Play» на экране меню. Когда я нажимаю кнопку, она повторяет печать тестового текста, пока я удерживаю кнопку. Я думаю, что это было бы так же просто, как написание кода, который позволяет печатать его только один раз, но я не знаю, как это сделать.
Я пытался добавить метод возврата, но мне не повезло.
Я также пытался переместить оператор MouseListener в mouseClicked, mouseEntered, mouseExited и mouseReleased, но безуспешно
У меня была подобная проблема в прошлом, за исключением замены операторов печати открытием других окон.
вот оператор MouseListener
public void mousePressed(MouseEvent e) {
if ((e.getButton() == 1)
&& (e.getX() >= Playx1 && e.getX() <= Playx1 + Playw1 && e.getY() >= Playy1 && e
.getY() <= Playy1 + Playh1)) {
System.out.println("Test Text, Replace line with method later");
}
}
и цикл анимации МОЖЕТ быть важным, я не знаю
private Thread animationThread = new Thread(new Runnable() {
public void run() {
while (true) {
repaint();
try {Thread.sleep(10);} catch (Exception ex) {}
}
}
});
Я ожидаю, когда я нажимаю кнопку, чтобы отобразить «Тестовый текст, Заменить строку методом позже» только один раз, но вместо этого он продолжает отображаться, пока я нажимаю кнопку.