Assalamualaikum Wr. Wb.
Selamat pagi teman-teman, jumpa lagi dengan aku. Nah kali ini aku mau membahas materi tentang EVENT HANDLING.
Event Handling adalah suatu metode untuk menangani sebuah event/aksi yang diberikan pengguna kepada suatu komponen GUI. Event adalah suatu peristiwa yang dipicu oleh pengguna pada suatu komponen, misalnya tombol ditekan. Dua paket yang biasa digunakan menangani kejadian adalah java.awt.event dan java.swing.event. Event handling dalam menangani event terbagi menjadi 3 macam yaitu Event Source, Event Listener, dan Event Handler.
1. Event Source
Event source adalah komponen yang mendapatkan suatu event yang kemudian ditangkap oleh Event Listener. Event Source dapat dibedakan dari penamaan komponen itu sendiri, misalnya tombolSimpan, tombolHapus dan lainnya. Dengan penamaan Event Source ini, sebuah Event Listener akan dapat mendeteksi dari mana Event Listener
tersebut berasal.
2. Event Listener
Event Listener digunakan untuk menangkap event yang terjadi pada komponen/Event Source. Dibawah ini disajikan beberapa listener yang dapat digunakan dalam mendeteksi event.
3. Event Handler
Event Handler berupa blok method dari listener yang menentukan proses selanjutnya setelah komponen mendapatkan event. Misalkan pada event tombol simpan ditekan, event listener akan menangkap event pada Event Source tombol Simpan, kemudian Event Handler akan menyimpan data yang didefenisikan pada blok Event Handler.
Oke mungkin itu sedikit penjelasan dari aku, langsung aja kita ke contoh programnya.
A. MEMBUAT PROGRAM EventButton.java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class ButtonHandling extends JFrame implements ActionListener {
private JLabel lbl;
private JButton btnSetuju;
private JButton btnBatal;
public ButtonHandling() {
super("Coba Button Handling");
lbl = new JLabel("Status : None");
lbl.setHorizontalAlignment(SwingConstants.CENTER);
btnSetuju = new JButton("Setuju");
btnBatal = new JButton("Batal");
btnSetuju.addActionListener(this);
btnBatal.addActionListener(this);
setLayout(new BorderLayout());
add(lbl, "North");
add(btnSetuju, "West");
add(btnBatal, "East");
pack();
setResizable(false);
setLocation(100,100);
setDefaultCloseOperation(3);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnSetuju) {
lbl.setText("Status = Setuju");
}
if(e.getSource()==btnBatal) {
lbl.setText("Status = Batal");
}
}
}
public class EventButton {
public static void main(String []args) {
new ButtonHandling();
}
}
Selamat pagi teman-teman, jumpa lagi dengan aku. Nah kali ini aku mau membahas materi tentang EVENT HANDLING.
Event Handling adalah suatu metode untuk menangani sebuah event/aksi yang diberikan pengguna kepada suatu komponen GUI. Event adalah suatu peristiwa yang dipicu oleh pengguna pada suatu komponen, misalnya tombol ditekan. Dua paket yang biasa digunakan menangani kejadian adalah java.awt.event dan java.swing.event. Event handling dalam menangani event terbagi menjadi 3 macam yaitu Event Source, Event Listener, dan Event Handler.
1. Event Source
Event source adalah komponen yang mendapatkan suatu event yang kemudian ditangkap oleh Event Listener. Event Source dapat dibedakan dari penamaan komponen itu sendiri, misalnya tombolSimpan, tombolHapus dan lainnya. Dengan penamaan Event Source ini, sebuah Event Listener akan dapat mendeteksi dari mana Event Listener
tersebut berasal.
2. Event Listener
Event Listener digunakan untuk menangkap event yang terjadi pada komponen/Event Source. Dibawah ini disajikan beberapa listener yang dapat digunakan dalam mendeteksi event.
3. Event Handler
Event Handler berupa blok method dari listener yang menentukan proses selanjutnya setelah komponen mendapatkan event. Misalkan pada event tombol simpan ditekan, event listener akan menangkap event pada Event Source tombol Simpan, kemudian Event Handler akan menyimpan data yang didefenisikan pada blok Event Handler.
Oke mungkin itu sedikit penjelasan dari aku, langsung aja kita ke contoh programnya.
A. MEMBUAT PROGRAM EventButton.java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class ButtonHandling extends JFrame implements ActionListener {
private JLabel lbl;
private JButton btnSetuju;
private JButton btnBatal;
public ButtonHandling() {
super("Coba Button Handling");
lbl = new JLabel("Status : None");
lbl.setHorizontalAlignment(SwingConstants.CENTER);
btnSetuju = new JButton("Setuju");
btnBatal = new JButton("Batal");
btnSetuju.addActionListener(this);
btnBatal.addActionListener(this);
setLayout(new BorderLayout());
add(lbl, "North");
add(btnSetuju, "West");
add(btnBatal, "East");
pack();
setResizable(false);
setLocation(100,100);
setDefaultCloseOperation(3);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnSetuju) {
lbl.setText("Status = Setuju");
}
if(e.getSource()==btnBatal) {
lbl.setText("Status = Batal");
}
}
}
public class EventButton {
public static void main(String []args) {
new ButtonHandling();
}
}
B. MEMBUAT PROGRAM EventRadio.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class RadioHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JRadioButton rbTn1, rbTn2, rbTn3;
public RadioHandling() {
setTitle("Coba RadioButton Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
rbTn1 = new JRadioButton("Pria");
rbTn2 = new JRadioButton("Wanita");
rbTn3 = new JRadioButton("??");
ButtonGroup group = new ButtonGroup();
group.add(rbTn1);
group.add(rbTn2);
group.add(rbTn3);
rbTn1.addItemListener(this);
rbTn2.addItemListener(this);
rbTn3.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(rbTn1);
panel.add(rbTn2);
panel.add(rbTn3);
pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getSource()==rbTn1) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Pria");
}
if(event.getSource()==rbTn2) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Wanita");
}
if(event.getSource()==rbTn3) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : ??");
}
}
}
public class EventRadio {
public static void main (String[] args) {
new RadioHandling();
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class RadioHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JRadioButton rbTn1, rbTn2, rbTn3;
public RadioHandling() {
setTitle("Coba RadioButton Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
rbTn1 = new JRadioButton("Pria");
rbTn2 = new JRadioButton("Wanita");
rbTn3 = new JRadioButton("??");
ButtonGroup group = new ButtonGroup();
group.add(rbTn1);
group.add(rbTn2);
group.add(rbTn3);
rbTn1.addItemListener(this);
rbTn2.addItemListener(this);
rbTn3.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(rbTn1);
panel.add(rbTn2);
panel.add(rbTn3);
pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getSource()==rbTn1) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Pria");
}
if(event.getSource()==rbTn2) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Wanita");
}
if(event.getSource()==rbTn3) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : ??");
}
}
}
public class EventRadio {
public static void main (String[] args) {
new RadioHandling();
}
}
C. MEMBUAT PROGRAM EventComboBox.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ComboBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private String Status[] = {"Setuju", "Batal"};
private JComboBox cbStatus;
public ComboBoxHandling() {
super("Coba Combo Box Handling");
teks = new JTextField("Status : None");
teks.setHorizontalAlignment(SwingConstants.CENTER);
cbStatus = new JComboBox(Status);
cbStatus.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(cbStatus, "South");
pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange()==ItemEvent.SELECTED) {
if(cbStatus.getSelectedIndex()==0)
teks.setText("Setuju");
else
if(cbStatus.getSelectedIndex()==1)
teks.setText("Batal");
}
}
}
public class EventComboBox {
public static void main (String[] args) {
new ComboBoxHandling();
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ComboBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private String Status[] = {"Setuju", "Batal"};
private JComboBox cbStatus;
public ComboBoxHandling() {
super("Coba Combo Box Handling");
teks = new JTextField("Status : None");
teks.setHorizontalAlignment(SwingConstants.CENTER);
cbStatus = new JComboBox(Status);
cbStatus.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(cbStatus, "South");
pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange()==ItemEvent.SELECTED) {
if(cbStatus.getSelectedIndex()==0)
teks.setText("Setuju");
else
if(cbStatus.getSelectedIndex()==1)
teks.setText("Batal");
}
}
}
public class EventComboBox {
public static void main (String[] args) {
new ComboBoxHandling();
}
}
C. MEMBUAT PROGRAM EventComboBox.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ComboBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private String Status[] = {"Setuju", "Batal"};
private JComboBox cbStatus;
public ComboBoxHandling() {
super("Coba Combo Box Handling");
teks = new JTextField("Status : None");
teks.setHorizontalAlignment(SwingConstants.CENTER);
cbStatus = new JComboBox(Status);
cbStatus.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(cbStatus, "South");
pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange()==ItemEvent.SELECTED) {
if(cbStatus.getSelectedIndex()==0)
teks.setText("Setuju");
else
if(cbStatus.getSelectedIndex()==1)
teks.setText("Batal");
}
}
}
public class EventComboBox {
public static void main (String[] args) {
new ComboBoxHandling();
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ComboBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private String Status[] = {"Setuju", "Batal"};
private JComboBox cbStatus;
public ComboBoxHandling() {
super("Coba Combo Box Handling");
teks = new JTextField("Status : None");
teks.setHorizontalAlignment(SwingConstants.CENTER);
cbStatus = new JComboBox(Status);
cbStatus.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(cbStatus, "South");
pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange()==ItemEvent.SELECTED) {
if(cbStatus.getSelectedIndex()==0)
teks.setText("Setuju");
else
if(cbStatus.getSelectedIndex()==1)
teks.setText("Batal");
}
}
}
public class EventComboBox {
public static void main (String[] args) {
new ComboBoxHandling();
}
}
E. Modifikasi program EventRadio.java dengan mengganti JRadioButton dengan
menggunakan JcheckBox
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class RadioHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JCheckBox rbTn1, rbTn2, rbTn3;
public RadioHandling() {
setTitle("Coba RadioButton Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
rbTn1 = new JCheckBox("Pria");
rbTn2 = new JCheckBox("Wanita");
rbTn3 = new JCheckBox("??");
ButtonGroup group = new ButtonGroup();
group.add(rbTn1);
group.add(rbTn2);
group.add(rbTn3);
rbTn1.addItemListener(this);
rbTn2.addItemListener(this);
rbTn3.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(rbTn1);
panel.add(rbTn2);
panel.add(rbTn3);
pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getSource()==rbTn1) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Pria");
}
if(event.getSource()==rbTn2) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Wanita");
}
if(event.getSource()==rbTn3) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : ??");
}
}
}
public class EventRadio {
public static void main (String[] args) {
new RadioHandling();
}
}
menggunakan JcheckBox
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class RadioHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JCheckBox rbTn1, rbTn2, rbTn3;
public RadioHandling() {
setTitle("Coba RadioButton Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
rbTn1 = new JCheckBox("Pria");
rbTn2 = new JCheckBox("Wanita");
rbTn3 = new JCheckBox("??");
ButtonGroup group = new ButtonGroup();
group.add(rbTn1);
group.add(rbTn2);
group.add(rbTn3);
rbTn1.addItemListener(this);
rbTn2.addItemListener(this);
rbTn3.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(rbTn1);
panel.add(rbTn2);
panel.add(rbTn3);
pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getSource()==rbTn1) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Pria");
}
if(event.getSource()==rbTn2) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : Wanita");
}
if(event.getSource()==rbTn3) {
if(event.getStateChange()==ItemEvent.SELECTED)teks.setText("Jenis Kelamin : ??");
}
}
}
public class EventRadio {
public static void main (String[] args) {
new RadioHandling();
}
}
nah itulah tadi tugas minggu 7 maaaf kalau tidak ada gambar hasil dari kode gmabarnya akan saya upload menyusul trimakasi
Tidak ada komentar:
Posting Komentar