Pin It

Obyek kelas JMenu (Kelas JMenu Dan Contoh Penggunaannya Di Pemrograman Java), JMenuItem (Kelas JMenuItem Dan Contoh Penggunaannya Di Pemrograman Java), JRadioButtonMenuItem (Kelas JRadioButtonMenuItem Dan Contoh Penggunaannya Di Pemrograman Java) dan JCheckBoxMenuItem (Kelas JCheckBoxMenuItem Dan Contoh Penggunaannya Di Pemrograman Java) dapat mempunyai ikon, keyboard mnemonic dan keyboard accelerator. Untuk menambahkan ikon, mnemonic dan accelerator di menu-menu aplikasi Java, Anda dapat menggunakan metoda setIcon(Icon icon), setMnemonic(int mnemonic) dan setAccelerator(KeyStroke keyStroke). Penggalan kode program di bawah ini akan menambahkan ikon, mnemonic dan accelerator di item menu New, Open, Save dan Print, menambahkan mnemonic dan accelerator di item menu Exit dan menambahkan hanya mnemonic di menu File.

ImageIcon imgNew = new ImageIcon(“c:\\filejava\\javaapp\\image4\\new.gif”);
ImageIcon imgOpen = new ImageIcon(“c:\\filejava\\javaapp\\image4\\open.gif”);
ImageIcon imgSave = new ImageIcon(“c:\\filejava\\javaapp\\image4\\save.gif”);
ImageIcon imgPrint = new ImageIcon(“c:\\filejava\\javaapp\\image4\\print.gif”);
mnuFile.setMnemonic(‘F’);
mnuNew.setIcon(imgNew);
mnuNew.setMnemonic(‘N’);
mnuNew.setAccelerator(KeyStroke.getKeyStroke
   (KeyEvent.VK_N, ActionEvent.CTRL_MASK));
mnuOpen.setIcon(imgOpen);
mnuOpen.setMnemonic(‘O’);
mnuOpen.setAccelerator(KeyStroke.getKeyStroke
   (KeyEvent.VK_O, ActionEvent.CTRL_MASK));
mnuSave.setIcon(imgSave);
mnuSave.setMnemonic(‘S’);
mnuSave.setAccelerator(KeyStroke.getKeyStroke
   (KeyEvent.VK_S, ActionEvent.CTRL_MASK));
mnuPrint.setIcon(imgPrint);
mnuPrint.setMnemonic(‘P’);
mnuPrint.setAccelerator(KeyStroke.getKeyStroke
   (KeyEvent.VK_P, ActionEvent.CTRL_MASK));
mnuExit.setMnemonic(‘E’);
mnuExit.setAccelerator(KeyStroke.getKeyStroke
   (KeyEvent.VK_E, ActionEvent.CTRL_MASK));
Menggunakan ikon, mnemonic dan accelerator di Java

Untuk memilih menu, Anda dapat menggunakan kombinasi kunci keyboard. Sebagai contoh, ketika menekan ALT + F, menu File akan dibuka untuk menampilkan item menu yang ada. Keyboard mnemonic berfungsi untuk mempercepat pemilihan menu tanpa menggunakan mouse, namun demikian hanya terbatas untuk menu yang terbuka. Anda tidak dapat memilih item menu Exit tanpa membuka menu File terlebih dahulu. Untuk memilih menu Exit, Anda terlebih dulu menekan ALT + F, kemudian menekan lagi ALT + E.

Anda juga dapat menggunakan keyboard accelerator untuk memilih dan mengeksekusi menu sekaligus tanpa melalui proses seperti keyboard mnemonic. Keyboard accelerator memilih dan mengeksekusi menu sekaligus tanpa menampilkan menu yang dipilih. Sebagai contoh, ketika ingin keluar dan menutup aplikasi, Anda cukup menekan CTRL + E. Keyboard accelerator tidak dapat ditambahkan di menu atau submenu (kelas JMenu) dan hanya bisa di item menu.

Untuk menambahkan keyboard accelerator di item menu, Anda dapat menggunakan metoda setAccelerator. Metoda ini memerlukan argumen berupa obyek KeyStroke. Metoda setKeyStroke dari kelas KeyStroke digunakan untuk membuat obyek keystroke. KeyEvent.VK_E adalah konstanta yang mewakili tombol E di keyboard dan ActionEvent.CTRL_MASK adalah konstanta yang mengindikasikan bahwa tombol CTRL dihubungkan dengan keystroke.