onChange dalam JTextField


berbeda dengan bahasa pemrograman GUI yang lain seperti VB atau Delphi, pada TextBox-nya memiliki action yang bernama onChange yang artinya aksi ketika isi TextBox-nya dirubah. nah berbeda dalam Swing (JTextField), JTextField tak memiliki aksi onChange.

tapi bukan berarti dalam Swing kita tak bisa memberi aksi onChange. seperti kita tahu, bahwa Swing menganut paham MVC (Model View Controller) sehingga ketika kita mengambil isi teks dari sebuah JTextField, sebenarnya kita bukan mengambilnya dari JTextField, melainkan dari Modelnya yang bernama Document. jadi perubahan isi teks sebernanya terjadi di Document, bukan di JTextField.

oleh karena itu JTextField tak memiliki aksi onChange, tapi kalo Document memiliki aksi onChange, yang dalam Swing bernama DocumentListener. untuk lebih jelasnya, mari kita buat….

image

menggunakan NetBeans IDE, lalu ubah nama variabel untuk JTextField menjadi textContoh, lalu JLabel menjadi label. setelah itu beri aksi pada Document milik JTextField :

textContoh.getDocument().addDocumentListener(new javax.swing.event.DocumentListener() {

            public void insertUpdate(DocumentEvent e) {
                // ketika teks dimasukkan
                label.setText(textContoh.getText());
            }

            public void removeUpdate(DocumentEvent e) {
                // ketika teks diubah
                label.setText(textContoh.getText());
            }

            public void changedUpdate(DocumentEvent e) {
                // ketika teks diubah
                label.setText(textContoh.getText());
            }
        });

sekarang coba jalankan :

image

sekarang setiap terjadi perubahan pada textContoh (JTextField) akan berubah pula isi teks label (JLabel).

see you at next trixxxx

Rock with Java !!!!

🙂

Iklan

10 pemikiran pada “onChange dalam JTextField

  1. Ping balik: Belajar JaVa « WAHYU FIGHTER

  2. Ping balik: Tutorial Java dari Eko Kurniawan Khannedy « nge-WP@net

  3. ehm…maksudnya masukkan aksi di document itu apa ya bos???

    ini ngodingnya dimana? maklum gw masih cupu banget di java…mohon bimbingannya bos

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s