Java tutorial
import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.JButton; import javax.swing.JFrame; public class Main { public static void main(String[] a) { JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Action action = new ShowAction(); JButton button = new JButton(action); frame.add(button, BorderLayout.CENTER); frame.setSize(350, 150); frame.setVisible(true); } } class ShowAction extends AbstractAction { public ShowAction() { super("About"); putValue(Action.MNEMONIC_KEY, new Integer(KeyEvent.VK_A)); putValue(Action.NAME, "Go to number "); putValue(Action.LONG_DESCRIPTION, "Change the number to "); System.out.println(super.getValue(Action.NAME)); } public void actionPerformed(ActionEvent actionEvent) { System.out.println("About Swing"); } }