Я создал приложение, которое имеет несколько страниц, и сделал это, когда я нажимаю кнопку «Назад», которую я создал, вернуться на предыдущую страницу и т. Д., А также создал это, когда я нажимаю кнопку «Назад» на клавиатуре, которая выполняет действие, которое ясоздан в кнопке «Назад», но есть проблема, когда я нажимаю клавишу «Backspace», когда я на панели ZE
, которая упоминается в приведенном ниже коде, и хочу вернуться на панель Z
, нажав кнопку возврата на клавиатуре, она также возвращается к H
панель после возврата на панель Z
, и я не хочу, чтобы это произошло, я хочу, чтобы она просто вернулась на панель Z
, я знаю, что это произошло, потому что я сделал заявление о поддержке на H
панели на dispatchKeyEvent
метод и ключ, который является backspace, так что я должен сделать, чтобы вернуться на предыдущую страницу, а не на предыдущую и предыдущую из предыдущих?
, и это мой код:
KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher() {
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getSource() instanceof JTextField)
{
}
else
{
if (Z.isVisible() && e.getKeyCode() == KeyEvent.VK_BACK_SPACE)
{
topZ.setVisible(false);
Z.setVisible(false);
H.setVisible(true);
topH.setVisible(true);
}
else if (ZE.isVisible() && e.getKeyCode() == KeyEvent.VK_BACK_SPACE)
{
topZE.setVisible(false);
ZE.setVisible(false);
topZ.setVisible(true);
Z.setVisible(true);
}
}
return false;
}
});