Обработка действий клавиатуры - Java

Узнай цену своей работы

Формулировка задачи:

Можете написать несколько строк кода, которые реагируют на нажатие клавиш? Напишу на русском, т.к. не совсем понимаю: public void keyPressed{ если нажали на кнопку "вверх" переменная х=1; если нажали на кнопку "вниз" переменная х=-1; если нажали на кнопку "вправо" переменная у=1; если нажали на кнопку "влево" переменная у=-1; } Помогите пожалуйста реализовать

Решение задачи: «Обработка действий клавиатуры»

textual
Листинг программы
public class MyFrame extends JFrame {
 
    public MyFrame(String Cap) {
        super(Cap);
        setSize(new Dimension(500, 500));
        setVisible(true);
 
        addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent evt) {
                switch (evt.getKeyCode()) {
                    case KeyEvent.VK_UP:
                        y -= 1;
                        DrawRect();
                        break;
                    case KeyEvent.VK_DOWN:
                        y += 1;
                        DrawRect();
                        break;
                    case KeyEvent.VK_LEFT:
                        x -= 1;
                        DrawRect();
                        break;
                    case KeyEvent.VK_RIGHT:
                        x += 1;
                        DrawRect();
                        break;
                }
            }
        });
    }
 
    @Override
    public void paint(Graphics g){
        g.setColor(Color.WHITE);
        g.fillRect(0, 0, getWidth(), getHeight());
        g.setColor(Color.BLACK);
        g.drawRect(x, y, 100, 100);
    }
 
    public void DrawRect() {
        this.repaint();
        this.getGraphics().drawRect(x, y, 100, 100);
    }
    private int x, y;
}

Оцени полезность:

7   голосов , оценка 3.571 из 5
Похожие ответы