Java Swing Click

Pada program desktop, klik sering dilakukan oleh pengguna.

Lalu, bagaimana cara menangai event ini?

Misal saat pengguna program mengklik sebuah tombol, nanti kita ingin program melakukan sesuatu di sana.

Itulah yang akan kita pelajari pada tutorial ini.

Oya, tutorial ini menggunakan Netbeans agar lebih mudah dalam pembuatan dan desain form.

Karena bisa drag/drop

1. Membuat Project Baru

Silahkan buka Netbeans, lalu klik New Project dan pilih Java Application.

Membuat project baru pada netbeans

Setelah itu, isi nama project dengan: TutorialSwing dan jangan centang Create Main Class.

Membuat project baru pada netbeans

Setelah itu, buat package baru pada <default package> dengan nama click. Package ini akan berisi sebuah form JFrame.

Membuat package baru

Setelah itu, buatlah sebuah JFrame baru.

Membuat package baru

Isi nama JFrame dengan: AplikasiKlik.

Nama JFrame

Langkah berikutnya kita akan menambahkan beberapa komponen…

2. Mendesain Form JFrame

Silahkan tambahkan komponen berikut:

  1. 1 buah jTextField;
  2. 1 buah jButton;
  3. 2 buah jLabel untuk label jTextField dan label message.
Desain Form JFrame

Sehingga desainnya menjadi seperti ini:

Desain Form JFrame

Langkah berikutnya, kita harus mengubah nama variabel untuk beberapa komponen.

Ini bertujuan untuk memudahkan kita untuk mengakses komponen di dalam kode program.

Karena Variable Name akan menjadi sebuah objek di dalam kode Java.

Silahkan klik salah satu komponen. Lalu pada bagian Code (dekat propertis), isi Variable Name

Variable name untuk Code

…untuk masing-masing komponen seperti berikut:

Variable name untuk Code

3. Menambahkan Handler pada Tombol

Kita ingin agar tombol diklik, nanti program melakukan sesuatu.

Maka caranya adalah dengan menambahkan fungsi atau method untuk menangani event klik pada tombol.

Cara menambahkannya:

Klik kanan pada tombol, lalu pilih Events->Action->actionPerformed atau bisa juga dengan klik ganda pada tombolnya.

Menambahkan even handler pada tombol

Maka kita akan memiliki sebauh method baru di dalam kode:

Method untuk menangani klik

Sekarang, coba kita ubah isi method tersebut menjadi seperti ini:

private void btnHelloActionPerformed(java.awt.event.ActionEvent evt) {
    String nama = txtNama.getText().toString().trim();
    labelMessage.setText("Hello " + nama);
}  

Sehingga akan menjadi seperti ini:

Method untuk menangani klik

Penjelasan:

Pertama, kita membuat sebuah variabel nama yang isinya kita ambil dari objek txtNama. Objek ini merupakan komponen dari TextField.

Kita menggunakan method getText() untuk mengambil teksnya, lalu kita gunakan method toString() untuk mengubahnya menjadi String.

Terakhir, kita gunakan method trim() untuk menghapus spasi di depan dan di belakang teks-nya.

…dan setelah itu…

Kita menampilkannya ke dalam komponen labelMessage dengan menggunakan method setText().

4. Percobaan…

Sekarang, mari kita coba jalankan programnya. Klik kanan pada AplikasiKlik.java kemudian pilih Run File atau tekan Shift+F6.

Maka hasilnya:

Demo program Klik

5. Membuat Program Kalkukator

Biar pemahaman kita semakin mantap, mari kita coba membuat program kalkulator penjumlahan.

Silahkan buat sebuah JFrame baru dengan nama Kalkulator di dalam package click.

Setelah itu buat desain dan Variabel Name-nya seperti ini.

Desain form program kalkulator

Setelah itu, klik 2x pada btnHitung untuk menambahkan method handler untuk event click.

Kemudian isi kode method-nya seperti ini:

private void btnHitungActionPerformed(java.awt.event.ActionEvent evt) {             
    int nilaiA = Integer.valueOf(txtNilaiA.getText());
    int nilaiB = Integer.valueOf(txtNilaiB.getText());
    int hasil = nilaiA + nilaiB;
    
    // tampilkan hasil ke label
    labelHasil.setText(String.valueOf(hasil));
} 

Penjelasan:

Pertama kita membuat vairabel nilaiA, nilaiB, dan hasil dengan tipe int (Integer).

Variabel nilaiA kita ambil nilainya dari txtNilaiA. Karena teks dari txtNilaiA bertipe String, maka kita harus mengubahnya menjadi integer agar dapat disimpan di dalam variabel nilaiA.

Kita menggunakan method Integer.valueOf() untuk mengubah string menjadi integer.

Kita juga melakukan hal yang sama pada variabel nilaiB.

Berikutnya pada variabel hasil, kita isi dengan hasil penjumlahan dari nilaiA dan nilaiB.

Terakhir, kita tampilkan hasilnya ke dalam labelHasil.

Karena method setText() hanya menerima parameter berupa string, maka kita harus ubah lagi tipe data dari variabel hasil menjadi string dengan method String.valueOf().

Sekarang coba eksekusi programnya dengan klik kanan pada file Kalkulator.java, lalu pilih Run File.

Hasilnya:

Demo program kalkulator

Mantap 👍

Apa Selanjutnya?

Event klik merupakan event yang sering dilakukan oleh user. Selain event klik, masih terdapat beberapa event lagi.

Seperti:

  • Saat tombol keyboard diklik;
  • Saat pointer melintasi (mouse over);
  • Saat jendela ditutup;
  • Saat TextField diisi;
  • dll.

Selengkapnya, kita bisa lihat dengan klik kanan pada sebuah komponen, lalu pilih events.

Cobalah untuk bereksperimen dengan event-event tersebut.