Tuesday, August 12, 2008

Tutorial Java GUI 2 : Label, Text dan Button

Setelah kita berkenalan dengan IDE Netbeans dan membuat aplikasi Hello World, kita sekarang bisa melangkah pada aplikasi kecil lainnya yang akan memperkenalkan kita pada beberapa komponen yang sering digunakan untuk membuat aplikasi terapan.

Pada tutorial kedua ini, kita akan membahas mengenai Label, TextField dan Button. Bagi programmer yang berasal dari bahasa pemrogramman selain Java, kita bisa memahami pola pengambilan variabel dan melakukan setting variabel melalui program kecil ini. Sebagai contoh, pada program terapan, kita akan sering berhubungan dengan “Bagaimana cara mengambil isi suatu Text Field” atau “Bagaimana cara mengeset isi suatu TextField”.

Dalam VB 6.0 (yang saya gunakan bertahun-tahun :-D ), perintah mendapatkan isi suatu text menggunakan perintah berikut :

strIsiText = txtTeks1.text

Sedangkan pada Java, hal ini dilakukan dengan memanggil method getText sebagai berikut :

strIsiText = txtTeks1.getText();

Mari kita lihat tutorial selengkapnya :

  1. Buatlah sebuah project Java Application pada Netbeans. Silakan merujuk pada artikel terdahulu jika masih belum tahu cara melakukannya
  2. Tambahkan sebuah JFrame Form. Beri nama dan judulnya
  3. Tambahkan 2 buah Label, 2 buah TextField (beri nama txtID dan txtNama) dan 3 buah Button (btnAdd, btnEdit, btnExit).
  4. Setting enabled = false (unchecked) pada properties txtID dan txtNama. Hal ini dilakukan karena pada saat di Load, form isian harus dalam kondisi disabled
  5. Setting Mnemonic untuk 3 buah button (A untuk btnAdd, E untuk btnEdit dan x untuk btnExit). Di Visual Basic hal ini dilakukan dengan menulis caption &Add, &Edit dan E&xit, sedangkan di Java, perintah ALT ini disebut Mnemonic. Fungsinya, agar tombol tersebut dapat diakses menggunakan tombol keyboard ALT + Huruf Mnemonic
  6. Lihat contoh form sebagai berikut :

  7. Ketikkan kode berikut pada event actionPerformed pada btnAdd. Jangan lupa lakukan import library yang diperlukan (import javax.swing.JOptionPane;) yang bisa secara otomatis dilakukan dengan melakukan klik pada bola lampu dibaris JOptionPane.
    1. private void btnAddActionPerformed(java.awt.event.ActionEvent evt) {
    2. if (btnAdd.getText().equals("Add")){
    3. //Tambah Data
    4. btnAdd.setText("Save");
    5. btnAdd.setMnemonic('S');
    6. btnEdit.setText("Cancel");
    7. btnEdit.setMnemonic('C');
    8. btnExit.setEnabled(false);
    9. txtID.setEnabled(true);
    10. txtNama.setEnabled(true);
    11. txtID.requestFocus();
    12. } else {
    13. //Simpan Data
    14. JOptionPane.showMessageDialog(null, "Menyimpan data ID '"+txtID.getText()+ "' dan Nama : '"+txtNama.getText()+"'") ;
    15. btnAdd.setText("Add");
    16. btnAdd.setMnemonic('A');
    17. btnEdit.setText("Edit");
    18. btnEdit.setMnemonic('E');
    19. btnExit.setEnabled(true);
    20. txtID.setEnabled(false);
    21. txtNama.setEnabled(false);
    22. btnAdd.requestFocus();
    23. }
    24. }
  8. Ketikkan kode berikut pada event actionPerformed pada txtID. Fungsinya adalah memindahkan fokus ke txtNama. Visual Basic biasanya menggunakan perintah .setfocus
    1. txtNama.requestFocus();
  9. Ketikkan kode berikut pada event actionPerformed pada txtNama
    1. btnAdd.requestFocus();
  10. Ketikkan kode berikut pada event actionPerformed pada btnExit. Fungsinya adalah menutup form. Pilih salah satu dari 2 kode berikut :
    1. dispose(); // digunakan untuk menutup form, sama dengan unload me di Visual Basic
    1. System.exit(0); //digunakan untuk menutup aplikasi, sama dengan End di Visual Basic
  11. Simpan dan jalankan aplikasi (SHIFT + F6)
  12. Jika kita melakukan klik pada tombol Add, text btnAdd berubah dari Add menjadi Save (Edit menjadi Cancel) dan fokus akan berpindah ke teks ID. Setelah ID diisi dan kita tekan ENTER, fokus berpindah ke teks Nama. Setelah mengisi nama dan menekan ENTER, fokus akan pindah ke button Add (yang berubah menjadi Save). Jika kita menekan tombol Add, akan keluar kotak pesan (MessageBox)

  13. Silakan modifikasi program agar tombol Edit bisa dipergunakan. Jika perlu, lakukan juga penambahan komponen yang terlibat.

No comments:

Post a Comment