Java Swing MenuKeyListener handle menu key event

Description

Java Swing MenuKeyListener handle menu key event

import java.awt.event.KeyEvent;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.event.MenuKeyEvent;
import javax.swing.event.MenuKeyListener;

public class Main {
  public static void main(final String args[]) {
    JFrame frame = new JFrame("MenuSample Example");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JMenuBar menuBar = new JMenuBar();

    // File Menu, F - Mnemonic
    JMenu fileMenu = new JMenu("File");
    fileMenu.setMnemonic(KeyEvent.VK_F);
    menuBar.add(fileMenu);//from w  w  w.  j  a v a2  s  .com

    // File->New, N - Mnemonic
    JMenuItem newMenuItem = new JMenuItem("asdf");
    fileMenu.add(newMenuItem);
    
    newMenuItem.addMenuKeyListener(new MenuKeyListener(){

      public void menuKeyTyped(MenuKeyEvent e) {
       System.out.println("KeyTyped");
      }

      public void menuKeyPressed(MenuKeyEvent e) {
        System.out.println("KeyPressed");
      }

      public void menuKeyReleased(MenuKeyEvent e) {
        System.out.println("KeyReleased");
      }});
    

    frame.setJMenuBar(menuBar);
    frame.setSize(350, 250);
    frame.setVisible(true);
  }
}



PreviousNext

Related