MEMBUAT EVENT CHECK BOX
Event Handling
Event
Handling adalah suatu metode untuk menangani sebuah event / aksi yang
diberikan pengguna kepada suatu komponen GUI.
Event adalah peristiwa yang
dipicu oleh pengguna pada suatu komponen, misalnya saat tombol ditekan.
Paket yang biasa digunakan
untuk menangani event adalah java.awt.event dan javax.swing.event
Event handling terbagi 3:
1. event source
komponen yang mendapat suatu
event, yang kemudian ditangkap oleh event listener
2. event listener
untuk menangkap event yang
terjadi pada komponen / event source
3. event handler
blok method dari listener
yang menentukan event selanjutnya setelah komponen mendapatkan event.
Contoh: pada saat tombol
simpan ditekan, maka event listener akan menangkap event pada tombol simpan
tersebut / event source simpan, kemudian event handler menyimpan data yang
didefenisikan pada blok event handler.
Berikut adalah contoh program
bersama output’a melalui tugas yang diberikan oleh dosen java:
TugasIwan.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class TugasCheckBoxHandling
extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JCheckBox aa, ab, ac;
public TugasCheckBoxHandling() {
setTitle("Coba CheckBox Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
aa = new JCheckBox("Pria");
ab = new JCheckBox("Wanita");
ac = new JCheckBox("Banci");
ButtonGroup group = new ButtonGroup();
group.add(aa);
group.add(ab);
group.add(ac);
aa.addItemListener(this);
ab.addItemListener(this);
ac.addItemListener(this);
setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(aa);
panel.add(ab);
panel.add(ac);
pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void itemStateChanged(ItemEvent event) {
if(event.getSource()==aa){
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Pria");
}
if(event.getSource()==ab){
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Wanita");
}
if(event.getSource()==ac){
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Banci");
}
}
}
public class TugasEmi {
public static void main(String[] args) {
new TugasCheckBoxHandling();
}
}
Hasil Outputnya :
setTitle("Coba CheckBox Handling");
setDefaultCloseOperation(EXIT_ON_CLOSE);
teks
= new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
mengatur teks agar tetap berada di tengah
aa= new JCheckBox("Pria");
ab
= new JCheckBox("Wanita");
ac
= new JCheckBox("Banci");
aa.addItemListener(this);
ab.addItemListener(this);→menambahkan
itemlistener pada aa, ab & ac
ac.addItemListener(this);
setLayout(new BorderLayout());→memamggil method setLayout
denganpengaturan letak teks, panel check box, sbb:
add(teks, "North");→teks di bagian utara / atas
add(panel, "West");→panel check box dimulai dari bagian barat
/ kiri
panel.add(aa);
panel.add(ab);
panel.add(ac);