Selasa, 10 Desember 2013

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);

Tidak ada komentar:

Posting Komentar