Minggu, 22 Januari 2012

Pertemuan 11

JMENU
Ø  MENU
Menu adalah komponen yang berbentuk grup fungsi pemproses yang berkaitan dengan fitur-fitur suatu aplikasi. Kelas JMenuBar mengimplementasikan bar yang ada dalamnya terdapat obyek-obyek menu yang bersifat pull down (dapat ditekan). Kelas JMenuItem digunakan untuk menyusun item menu yang berupa teks atau label, termasuk membuat shortcut dari tombol-tombol keyboard. Kelas JMenu digunakan untuk menginstans obyek-obyek pull down menu yang akan diletakkan pada menu bar.


MainMenu.java
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

class CobaMenu extends JFrame {
JMenuBar menuBar;
JMenu file, doc, edit,help;
JMenuItem open, save, exit, delete, copy, paste, about;

public CobaMenu() {
setTitle("Menu");
setSize(200,200);
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('L');
copy = new JMenuItem("Copy");
copy.setMnemonic('C');
paste = new JMenuItem("Paste");
paste.setMnemonic('P');
about = new JMenuItem("About");
about.setMnemonic('A');

menuBar = new JMenuBar();
setJMenuBar(menuBar);
menuBar.add(file);
file.add(open);
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);
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
}

public class MainMenu {
public static void main(String [] neno) {
CobaMenu m = new CobaMenu();
}
}

Hasil dari kode di atas ketika dijalankan sbb:


FFrame.java
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

class FFrame extends JFrame implements ActionListener{
JButton btnTutup = new JButton("TUTUP");
public FFrame() {
super ("FRAME");
setSize(200,100);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setLayout(null);
add(btnTutup);
btnTutup.addActionListener(this);
btnTutup.setBounds(40,20,100,20);
setVisible(true);
}

public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnTutup){
dispose();
}
}
}

Hasil darikode:


FDialog.java
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

class FDialog extends JDialog implements ActionListener{
JButton btnTutup = new JButton("Tutup");

public FDialog() {
setTitle("DIALOG");
setSize(200,100);
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setLayout(null);
add(btnTutup);
btnTutup.addActionListener(this);
btnTutup.setBounds(40,20,100,20);
setVisible(true);
}

public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnTutup){
dispose();
}
}
}
Hasil darikode:
MainMenu1.java
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

class Menu extends JFrame {
JMenuBar menuBar;
JMenu file, buatBaru;
JMenuItem exit, frame, dialog, pesan;

public Menu() {
setTitle("Menu");
setSize(200,200);
file = new JMenu("File");
file.setMnemonic('F');
buatBaru = new JMenu("BuatBaru");
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));
menuBar = new JMenuBar();
setJMenuBar(menuBar);
menuBar.add(file);
file.add(exit);
menuBar.add(buatBaru);
buatBaru.add(frame);
buatBaru.add(dialog);
buatBaru.add(pesan);

exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});

frame.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new FFrame();
}
});

dialog.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new FDialog();
}
});

pesan.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Tutup?", "Pesan", JOptionPane.QUESTION_MESSAGE);
}
}
);

setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
}

public class MainMenu1 {
public static void main(String [] neno) {
new Menu();
}
}

Hasil dari kode di atas ketika dijalankan sbb:


Sabtu, 14 Januari 2012

Tugas Pertemuan_10




Kode Program untuk membuat tampilan di atas adalah sbb:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

class CheckBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JCheckBox cb1, cb2, cb3;

public CheckBoxHandling() {
setTitle("Coba CheckBox Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
cb1 = new JCheckBox("Pria");
cb2 = new JCheckBox("Wanita");
cb3 = new JCheckBox("Banci");

ButtonGroup group = new ButtonGroup();
group.add(cb1);
group.add(cb2);
group.add(cb3);
cb1.addItemListener(this);
cb2.addItemListener(this);
cb3.addItemListener(this);

setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(cb1);
panel.add(cb2);
panel.add(cb3);

pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public void itemStateChanged(ItemEvent event) {
if(event.getSource()==cb1) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Pria");
}

if(event.getSource()==cb2) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Wanita");
}

if(event.getSource()==cb3) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Banci");
}
}
}
public class EventCheckBox {
public static void main (String[] args) {
new CheckBoxHandling();
}          
}


Keterangan :
1.      import java.awt.* : Berfungsi untuk mengimport semua class yang ada pada package java.awt agar dapat menggunakan semua komponen yang ada pada package tersebut.
2.      import javax.swing.* : Berfungsi untuk mengimport semua yang ada pada package javax.swing agar dapat menggunakan semua class yang ada pada package tersebut.
3.      import java.awt.event.* : Berfungsi untuk mengimport semua class yang ada pada package java.awt.event agar dapat menggunakan semua komponen yang ada pada package tersebut.
4.      class CheckBoxHandling extends JFrame implements ItemListener : Pembuatan class dengan nama CheckBoxHandling yang mewarisi class JFrame dengan mengimplementasikan ItemListener.
5.      private JPanel panel: Mendeklarasikan objek dari class Jpanel.
6.      private JCheckBox cb1, cb2, cb3: Mendeklarasikan objek dari class JcheckBox dengan nama cb1, cb2, cb3.
7.      public CheckBoxHandling() : Merupakan constructor dari class CheckBoxHandling.
8.      setTitle("Coba CheckBox Handling"): Penggunaan method setTitle pada class JFrame yang berfungsi untuk memberikan judul “Coba CheckBox Handling pada frame.
9.      new JTextField("Jenis Kelamin : Pilihan"): Membuat objek baru JtextField dengan nama objek Jenis Kelamin : Pilihan (berdasarkan jenis kelamin yang di pilih).
10.  cb1 = new JCheckBox("Pria") : Membuat objek baru JcheckBox dengan nama objek cb1 (untuk membuat pilihan CheckBox Pria).
11.  cb2 = new JCheckBox("Wanita") : Membuat objek baru JcheckBox dengan nama objek cb2 (untuk membuat pilihan CheckBox Wanita).
12.  Cb3 = new JCheckBox("Banci") : Membuat objek baru JcheckBox dengan nama objek cb3 (untuk membuat pilihan CheckBox Banci).
13.  setLayout (new BorderLayout ()) : Membuat objek baru dari setLayout dengan memberi jenis method setLayout yaitu BorderLayout yang berfungsi untuk mengatur Layout.
14.  setVisible (true) : Metode setVisible() merupakan metode yang diwariskan dari kelas java.awt.Window. Metode ini digunakan untuk memunculkan atau menyembunyikan window. Argumen yang dapat dimasukkan adalah true atau false.
15.  setDefaultCloseOperation() :  digunakan untuk menangani kejadian saat tanda silang di pojok kanan atas pada window diklik.
16.  public class EventCheckBox { : Pembuatan class dengan nama class EventCheckBox.
17.  public static void main(String[] args) : Berfungsi sebagai program utama yang akan dijalankan ketika program di run sehingga program ini di simpan dengan nama class yang terdapat baris program utamanya.