List of usage examples for javax.swing JPanel registerKeyboardAction
public void registerKeyboardAction(ActionListener anAction, KeyStroke aKeyStroke, int aCondition)
getActionMap()
and getInputMap()
for similar behavior. From source file:ColorAction.java
public static void main(String[] args) { JFrame frame = new JFrame(); frame.setTitle("SeparateGUITest"); frame.setSize(300, 200);/*w w w . j a va 2s. co m*/ frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); JPanel panel = new JPanel(); Action blueAction = new ColorAction("Blue", new ImageIcon("blue-ball.gif"), Color.blue, panel); Action yellowAction = new ColorAction("Yellow", new ImageIcon("yellow-ball.gif"), Color.yellow, panel); Action redAction = new ColorAction("Red", new ImageIcon("red-ball.gif"), Color.red, panel); panel.add(new JButton(yellowAction)); panel.add(new JButton(blueAction)); panel.add(new JButton(redAction)); panel.registerKeyboardAction(yellowAction, KeyStroke.getKeyStroke(KeyEvent.VK_Y, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); panel.registerKeyboardAction(blueAction, KeyStroke.getKeyStroke(KeyEvent.VK_B, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); panel.registerKeyboardAction(redAction, KeyStroke.getKeyStroke(KeyEvent.VK_R, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); Container contentPane = frame.getContentPane(); contentPane.add(panel); JMenu m = new JMenu("Color"); m.add(yellowAction); m.add(blueAction); m.add(redAction); JMenuBar mbar = new JMenuBar(); mbar.add(m); frame.setJMenuBar(mbar); frame.show(); }
From source file:org.pentaho.reporting.engine.classic.core.modules.gui.base.AbstractExportDialog.java
protected JPanel createButtonPanel() { final JButton btnCancel = new JButton(getCancelAction()); final JButton btnConfirm = new JButton(getConfirmAction()); final JPanel buttonPanel = new JPanel(); buttonPanel.setLayout(new GridLayout(1, 2, 5, 5)); buttonPanel.add(btnConfirm);/*w w w. j a va 2 s . c o m*/ buttonPanel.add(btnCancel); btnConfirm.setDefaultCapable(true); getRootPane().setDefaultButton(btnConfirm); buttonPanel.registerKeyboardAction(getConfirmAction(), KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); final JPanel buttonCarrier = new JPanel(); buttonCarrier.setLayout(new FlowLayout(FlowLayout.RIGHT)); buttonCarrier.add(buttonPanel); return buttonCarrier; }