JMenu
Menu merupakan sebuah daftar dalam
sebuah aplikasi yang menyediakan pilihan untuk dapat digunakan sesuai dengan
yang diinginkan oleh pengguna. Melalui menu, anda dapat dengan mudah
menjalankan atau menggunakan aplikasi yang sudah berisi daftar menu pilihan. Maka
dari itu, tentu saja pembuatan menu menjadi bagian yang cukup penting dalam
pembuatan sebuah aplikasi.
JMenu
merupakan sebuah class dari Java dari package Swing. JMenu sebenarnya terbagi
atas 3 jenis; JMenuBar, JMenu, dan
JMenuItem yang dapat disebut constructor pada menu. JMenu ini akan
menghasilkan menu pull down layaknya menu window, seperti menu file, edit,
view, sampai help pada menu bar di Firefox.
Pembuatan text pada menu dapat
dilakukan pada metode JMenu(), misalnya untuk menu bernama “File”, cukup
menggunakan metode JMenu(“File”). Agar isi menu ini bisa dimasukkan pada
menu bar, anda perlu menggunakan method add().
Lebih jelasnya
berikut contoh skripnya:
Merupakan program
untuk membuat menu dalam java dengan nama file MainMenu.java yang menggunakan
package FDialog.java dan FFrame.java.
Di program ini anda juga dapat
menggunakan shortcut melalui kombinasi tobol keyboard serta menggunakan tombol
tertentu saja. Untuk melakukan ini gunakan method setMnemonic() serta setAccelerator().
- setMnemonic() : Untuk memberikan garis bawah pada huruf atau karakter tertentu, dan penggunaannya dengan kombinasi penekan tombol alt+[Karakter yang dipilih].
- setAccelerator() : Untuk membuat shortcut pada menu dengan kombinasi dari 2 tombol. Ex: Ctrl+N.
Berikut
source codenya :
1.
exit = new JMenuItem("Exit");
exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,ActionEvent.CTRL_MASK));
frame = new JMenuItem("Frame");
frame.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,ActionEvent.CTRL_MASK));
dialog = new JMenuItem("Dialog");
dialog.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D,ActionEvent.CTRL_MASK));
pesan = new JMenuItem("Pesan");
pesan.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,ActionEvent.CTRL_MASK));
2.
file = new JMenu("File");
file.setMnemonic('F');
doc=new
JMenu("Document");
doc.setMnemonic('D');
1.
Program MainMenu.java
import java.awt.event.*; //
pemanggilan package java.awt.event.swing
import javax.swing.*; // pemanggilan
package javax.swing
import java.awt.*; // pemanggilan
package java.awt.swing
class Menu extends JFrame{ // pendeklarasian class utama turunan dari class JFrame
JMenuBar menuBar;
JMenu file, buatBaru;
JMenuItem exit, frame, dialog, pesan;
public Menu() {
setTitle ("Menu"); //
menentukan judul pada Menu Bar diJFrame
setSize(200,200); //
menentukan ukuran JFrame
file = new
JMenu("File"); // menentukan nama pada menu bar pertama
file.setMnemonic('F');
buatBaru = new
JMenu("BuatBaru"); // menentukan nama pada menu bar kedua
buatBaru.setMnemonic('B');
exit = new JMenuItem("Exit");
exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,ActionEvent.CTRL_MASK));
frame = new JMenuItem("Frame");
frame.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,ActionEvent.CTRL_MASK));
dialog = new JMenuItem("Dialog");
dialog.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D,ActionEvent.CTRL_MASK));
pesan = new JMenuItem("Pesan");
pesan.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,ActionEvent.CTRL_MASK));
//membuat menu bar
menuBar = new JMenuBar();
setJMenuBar (menuBar);
menuBar.add(file); // menambahkan menu
pertama
file.add(exit); // menambahkan sub menu atau menu item pada menu file
menuBar.add(buatBaru); // menambahkan
menu kedua
//menambahkan menu item pada menu
buatBaru
buatBaru.add(frame);
buatBaru.add(dialog);
buatBaru.add(pesan);
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0); //membuat perintah
keluar dari program untuk sub menu exit
}
}
);
frame.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new FFrame (); // pemanggilan package
FFrame.java
}
}
);
dialog.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new FDialog (); //pemanggilan package
FDialog.java
}
}
);
pesan.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null,
"Tutup?", "Pesan",
JOptionPane.QUESTION_MESSAGE); // menampilkan kotak
dialog pada saat pesan di klik
}
}
);
setDefaultCloseOperation(EXIT_ON_CLOSE);
// membuat operasi exit pada JFrame
setVisible(true); // mengaktifkan atau membuat visible suatu JFrame
}
}
public class MainMenu{ // pemanggilan
class
public static void main(String [] neno) {
new Menu();
}
}
2.
Program FDialog.java
import java.awt.event.*; //
pemanggilan package java.awt.event.swing
import javax.swing.*; // pemanggilan
package javax.swing
import java.awt.*; // pemanggilan
package java.awt.swing
class FDialog extends JDialog implements ActionListener {
JButton
btnTutup = new JButton ("Tutup");// Event untuk menutup window
public FDialog() { // mendeklarasikan class
setTitle("DIALOG");// membuat judul pada JFrame
setSize(200,100); // menentukan ukuran pada JFrame
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);// membuat operasi exit pada JFrame
setLayout(null);// menentuka tampilan Layout
add(btnTutup);// menambahkan tombol Tutup
btnTutup.addActionListener(this);
btnTutup.setBounds(40,20,100,20);// menentukan letak tombol pada JFrame
setVisible(true);// mengaktifkan atau membuat visible suatu JFrame
}
public void actionPerformed(ActionEvent e) {
if (e.getSource()==btnTutup){
dispose();
}
}
}
3.
Program FFrame.java
import java.awt.event.*; //
pemanggilan package java.awt.event.swing
import javax.swing.*; // pemanggilan
package javax.swing
import java.awt.*; // pemanggilan
package java.awt.swing
class FFrame extends JFrame
implements ActionListener{// pendeklarasian class utama
turunan dari class JFrame
JButton btnTutup = new JButton("TUTUP");// Event untuk menutup window
JButton btnTutup = new JButton("TUTUP");// Event untuk menutup window
public FFrame(){// mendeklarasikan class
super ("FRAME");// membuat
class super
setSize(200,100); // menentukan ukuran
pada JFrame
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // membuat operasi exit pada JFrame
setLayout(null); // menentuka tampilan
Layout
add(btnTutup); // menambahkan tombol
Tutup
btnTutup.addActionListener(this);
btnTutup.setBounds(40,20,100,20); // menentukan
letak tombol pada JFrame
setVisible(true); // mengaktifkan atau membuat visible suatu JFrame
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==btnTutup){
dispose();
}
}
}
Ketika dijalankan maka
hasilnya akan seperti gambar berikut :
Contoh skrip lain
untuk membuat menu yang sederhana:
4. Program MainMenu1.java
import
java.awt.event.*; // pemanggilan package java.awt.event.swing
import
javax.swing.*; // pemanggilan package javax.swing
import java.awt.*; // pemanggilan package java.awt.swing
class CobaMenu
extends JFrame {
JMenuBar menuBar;
JMenu file, doc, edit, help;
JMenuItem open, save, exit, delete, copy,
paste, about;
public CobaMenu() { //
pendeklarasian class
setTitle("Menu");// menentukan judul MenuBar
setSize(200,200); // menentukan
ukuran pada JFrame
// membuat menu bar
file = new JMenu("File");
file.setMnemonic('F');
doc=new JMenu("Document");
doc.setMnemonic('D');
edit = new JMenu("Edit");
edit.setMnemonic('E');
help = new JMenu("Help");
help.setMnemonic('H');
open = new JMenuItem("Open");
open.setMnemonic('O');
save = new JMenuItem("Save");
save.setMnemonic('S');
exit = new JMenuItem("Exit");
exit.setMnemonic('X');
delete = new JMenuItem("Delete");
delete.setMnemonic('D');
copy = new JMenuItem("Copy");
copy.setMnemonic('C');
paste = new JMenuItem("Paste");
paste.setMnemonic('P');
about = new JMenuItem("About");
about.setMnemonic('A');
// pembuatan JMenubar pada program
menuBar = new
JMenuBar();
setJMenuBar(menuBar);
// menset atau mengaktifkan JMenubar pada JFrame
menuBar.add(file); // menambahakan menu pada menu
bar
file.add("open");
// menambahakan sub menu pada menu
file.add("save");
file.addSeparator();
file.add(exit);
menuBar.add(doc);
doc.add(edit);
edit.add(copy);
edit.add(paste);
edit.add(delete);
menuBar.add(help);
help.add(about);
exit.addActionListener(new
ActionListener() {
public void actionPerformed (ActionEvent e) {
System.exit(0); //membuat perintah keluar dari program untuk sub menu exit
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE); // membuat operasi exit pada JFrame
setVisible(true); // mengaktifkan atau membuat visible suatu JFrame
}
}
public class MainMenu1 {// pemanggilan class
public static void main(String []neno) {
CobaMenu m = new CobaMenu();
}
}
Ketika dijalankan maka
hasilnya akan seperti gambar berikut :
Tidak ada komentar:
Posting Komentar