Как проверить, была ли нажатая клавиша клавишей со стрелкой в Java KeyListener?

в сервлете вы должны поместить response.setStatus(response.SC_MOVED_PERMANENTLY);, чтобы отправить статус xmlHttp '301', необходимый для перенаправления ...

, а в функции $ .ajax вы не должны использовать .toString() function ..., just

if (xmlHttp.status == 301) { top.location.href = 'xxxx.jsp'; }

проблема в том, что она не очень гибкая, вы не можете решить, куда вы хотите перенаправить ..

перенаправление через сервлеты должно быть лучшим способом. но я все еще не могу найти правильный способ сделать это.

32
задан Click Upvote 5 March 2009 в 22:22
поделиться

5 ответов

public void keyPressed(KeyEvent e) {
    int keyCode = e.getKeyCode();
    switch( keyCode ) { 
        case KeyEvent.VK_UP:
            // handle up 
            break;
        case KeyEvent.VK_DOWN:
            // handle down 
            break;
        case KeyEvent.VK_LEFT:
            // handle left
            break;
        case KeyEvent.VK_RIGHT :
            // handle right
            break;
     }
} 
78
ответ дан 27 November 2019 в 20:01
поделиться

Только для завершения ответа (использующий KeyEvent способ пойти), но стрелка вверх равняется 38 и стрелке вниз, - 40 так:

    else if (e.getKeyCode()==38)
    {
            //Up arrow key code
    }
    else if (e.getKeyCode()==40)
    {
            //down arrow key code
    }
6
ответ дан 27 November 2019 в 20:01
поделиться
public void keyPressed(KeyEvent e) {
    if (e.getKeyCode() == KeyEvent.VK_RIGHT ) {
            //Right arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_LEFT ) {
            //Left arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_UP ) {
            //Up arrow key code
    } else if (e.getKeyCode() == KeyEvent.VK_DOWN ) {
            //Down arrow key code
    }

    repaint();
}

коды KeyEvent - весь часть API: http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html

6
ответ дан 27 November 2019 в 20:01
поделиться

Если Вы подразумеваете, что хотите присоединить это к своей панели (Окно, что Вы работаете с).

тогда необходимо создать внутренний класс, которые расширяются от интерфейса IKeyListener и затем включают тот метод к классу.

Затем присоедините тот класс к Вам панель: this.addKeyListener (новый подкласс ());

0
ответ дан 27 November 2019 в 20:01
поделиться

Необходимо использовать вещи как: KeyEvent. VK_UP вместо фактического кода.

, Как Вы желаете осуществить рефакторинг его? Какова цель рефакторинга?

0
ответ дан 27 November 2019 в 20:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: