Я занимаюсь разработкой игры, в которой вы впервые попадаете на главный экран, на выбор предлагается несколько вариантов, например, одиночная игра, двойная игра, кредиты и т. Д.
У меня есть одна большая проблема.Если я нажимаю кнопку в меню (не JButton
), то переключается JPanel
s, но keyListener теряется.Keylistener
находится в том же классе, что и игровой код, который реализует JPanel
.Я попробовал все, чтобы заставить Keylistener
работать, но это просто не будет.
Вот как все это называется: Основной класс -> Меню -> Игра.Я попытался добавить список ключей в основной класс, но он не работает.
Итак, переключение JPanel
в порядке, но Keylistener
прошло.Раньше я разрабатывал игру с новыми JFrame
s, поэтому, когда я щелкал меню, был создан новый фрейм.Я не вставил сюда код, потому что он слишком длинный (2000+ строк), и KeyListener
работает, но только когда он находится в новом JFrame
.Я установил режим int в классе Menu, нажав кнопку.
В настоящее время это мой переключатель панели:
public void setJPanel() {
switch (mode) {
case 1:
getContentPane().add(s);
validate();
break;
case 2:
getContentPane().removeAll();
getContentPane().add(sp);
validate();
break;
}
}
Заранее спасибо за помощь!