Login  Register

Re: Newt Multimedia keys

Posted by mahesh on Mar 09, 2018; 9:57am
URL: https://forum.jogamp.org/Newt-Multimedia-keys-tp4038723p4038726.html

for all multimedia keys , KeyCode returned is 0
BTW keypressed is fired for multimedia events, but of no use since we do not know which key was pressed

this is sample program which displays keycode and keychar in console window

/**
 * A program to listen newt keyevents
 *
 */
public class JOGL2NewtDemo {
    private static String TITLE = "JOGL 2 with NEWT";  // window's title
    private static final int WINDOW_WIDTH = 400;  // width of the drawable
    private static final int WINDOW_HEIGHT = 300; // height of the drawable
    private static final int FPS = 60; // animator's target frames per second

     /**
     * The entry main() method.
     */
    public static void main(String[] args) {
        // Get the default OpenGL profile, reflecting the best for your running platform
        GLProfile glp = GLProfile.getDefault();
        // Specifies a set of OpenGL capabilities, based on your profile.
        GLCapabilities caps = new GLCapabilities(glp);
        // Create the OpenGL rendering canvas
        GLWindow window = GLWindow.create(caps);

        // Create a animator that drives canvas' display() at the specified FPS.
        final FPSAnimator animator = new FPSAnimator(window, FPS, true);

        window.addWindowListener(new WindowAdapter() {
            @Override
            public void windowDestroyNotify(WindowEvent arg0) {
                // Use a dedicate thread to run the stop() to ensure that the
                // animator stops before program exits.
                new Thread() {
                    @Override
                    public void run() {
                        if (animator.isStarted())
                            animator.stop();    // stop the animator loop
                        System.exit(0);
                    }
                }.start();
            }
        });

        window.addKeyListener(new KeyListener(){

			@Override
			public void keyPressed(KeyEvent e) {
				System.out.println("keycode="+e.getKeyCode()+"  keyChar="+e.getKeyChar());
			}

			@Override
			public void keyReleased(KeyEvent e) {
				// TODO Auto-generated method stub
				
			}
        	
        });	
          window.setSize(WINDOW_WIDTH, WINDOW_HEIGHT);
        window.setTitle(TITLE);
        window.setVisible(true);
        animator.start();  // start the animator loop
    }
}