inputhandler.java

来自「NeHe用java与OpenGL结合教程源码」· Java 代码 · 共 29 行

JAVA
29
字号
package demos.nehe.lesson24;

import demos.common.GLDisplay;

import javax.swing.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

class InputHandler extends KeyAdapter {
    private Renderer renderer;

    public InputHandler(Renderer renderer, GLDisplay glDisplay) {
        this.renderer = renderer;
        glDisplay.registerKeyStrokeForHelp(KeyStroke.getKeyStroke(KeyEvent.VK_UP, 0), "Scroll up");
        glDisplay.registerKeyStrokeForHelp(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0), "Scroll down");
    }

    public void keyPressed(KeyEvent e) {
        switch (e.getKeyCode()) {
            case KeyEvent.VK_UP:                                 // Is Up Arrow Being Pressed?
                renderer.setScroll(renderer.getScroll() - 12);  // If So, Decrease 'scroll' Moving Screen Down
                break;
            case KeyEvent.VK_DOWN:                               // Is Down Arrow Being Pressed?
                renderer.setScroll(renderer.getScroll() + 12); // If So, Increase 'scroll' Moving Screen Up
                break;
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?