Aplikasi Java GUI Sederhana

Membuat Form Java GUI Swing - Dalam pemrograman berorientasi objek, graphic user interface (GUI) merupakan syarat mutlak yang menjadi keunggulan dibandingkan dengan jenis pemrograman lama (qbasic, pascal,dll).


Salah satu attribut penting dalam GUI pemrograman berorientasi objek adalah event. Dibutuhkan pemahaman untuk dapat memanfaatkan event agar aplikasi yang dirancang menjadi lebih sederhana dan mudah digunakan oleh pengguna nantinya.

Dalam artikel kali ini, kita akan coba membangun aplikasi berorientasi objek sederhana dengan menggunakan bahasa pemrograman Java dan pemanfaatan tool Jcreator. Berikut langkah-langkahnya:

Buka Jcreator, buat file baru (Empty Java File) dengan nama CobaSWING. Ketikkan kode berikut ini:

import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JButton;
import javax.swing.ButtonGroup;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;


Fungsinya adalah untuk mengitegrasikan library yang berisi fungsi-fungsi bawaan dari masing-masing objek yang dipanggil.

Selanjutnya buat class utama dengan nama sesuai nama file, yakni CobaSWING. Lalu deklarasikan variabel dan objek yang akan digunakan. Script-nya adalah sebagai berikut:

public class CobaSWING extends javax.swing.JFrame{
    JLabel lb1=new JLabel("Nama");
    JLabel lb2=new JLabel("Jenis Kelamin");
    JLabel lb3=new JLabel("Alamat");
    JTextField tx1=new JTextField();
    JRadioButton rd1=new JRadioButton("Pria");
    JRadioButton rd2=new JRadioButton("Wanita");
    ButtonGroup groupJK=new ButtonGroup();
    JTextArea ta1=new JTextArea();
    JButton bt1=new JButton("Proses");
    JButton bt2=new JButton("Batal");
    JButton btTutup=new JButton("Tutup");
    String nma,sex,almt;
    JOptionPane psn=new JOptionPane();

   
Buat sebuah fungsi tersendiri dengan nama tempelKomponen(), untuk mengatur tampilan objek-objek, baik ukuran maupun posisinya dan lain-lain.

   
public void tempelKomponen(){
        setLayout(null);
        setSize(350,140);
        setLocation(200,200);
               
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setResizable(false);       
       
        lb1.setBounds(10,10,40,20);add(lb1);       
       
        lb2.setBounds(10,30,80,20);add(lb2);       
       
        lb3.setBounds(10,50,40,20);add(lb3);       
       
        tx1.setBounds(100,10,130,20);add(tx1);
               
        rd1.setBounds(100,30,60,20);add(rd1);
               
        rd2.setBounds(160,30,80,20);add(rd2);       
       
        groupJK.add(rd1);
        groupJK.add(rd2);       
       
        ta1.setBounds(100,50,130,40);add(ta1);       
       
        bt1.setBounds(250,10,80,18);add(bt1);

        bt2.setBounds(250,30,80,18);add(bt2);

        btTutup.setBounds(250,80,80,18);add(btTutup);


Lalu untuk penanganan event pada tombol yang telah dipasang, tambahkan fungsi actionPerformed() pada tiap objek tombol yang ada. Scriptnya adalah sebagai berikut

        bt1.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent evt){
                nma=tx1.getText().trim();almt=ta1.getText().trim();
                sex="";
                if(rd1.isSelected()){
                    sex="Pria";
                }else if(rd2.isSelected()){
                    sex="Wanita";
                }               
                if(nma.isEmpty() || sex.isEmpty() || almt.isEmpty()){
                    psn.showMessageDialog(null,"Silakan lengkapi entry data !");
                }else{
                    psn.showMessageDialog(null,"Nama:"+ nma + ". Jk:"+ sex + ". Alamat:"+ almt);
                }               
            }
        });

        bt2.setBounds(250,30,80,18);
        add(bt2);
        bt2.addActionListener(new ActionListener(){
            public void actionPerformed (ActionEvent evt){
                tx1.setText("");
                ta1.setText("");
                groupJK.clearSelection();
                tx1.requestFocus();
            }
        });
       
        btTutup.setBounds(250,80,80,18);add(btTutup);
        btTutup.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent evt){
                dispose();
            }
        });
    }

    public CobaSWING(){
        this.setTitle("Form Pertama");
        tempelKomponen();
       
    }



Terakhir, buat fungsi main() untuk pemanggilan/ pengeksekusian script yang telak di-ketik sebelumnya. Scriptnya adalah sebagai berikut

    public static void main (String[] args) {
        new CobaSWING().setVisible(true);
    }
}


Demikianlah aplikasi sederhana java dengan objek-objek tombol, textbox dll sebagai antarmuka grafis. Ketika menekan tombol proses, jika isian data belum lengkap, akan muncul pesan yang menginformasikan hal tersebut. Jika menekan tombol batal, maka isian akan dibersihkan dan fokus kursor berpindah ke texbox, siap untuk mengentri data kembali.

Silakan download script CobaSWING.java melalui link berikut: share file

Pada postingan berikut, kita akan coba menghubungkan aplikasi antarmuka dengan penyimpanan data (database), misalnya msAccess atau mySQL.

Semoga dapat berguna. :)

4 Comments

Isi komentar yang mengandung link aktif (untuk tujuan mencari backlink) akan diblokir oleh system dan akan segera dihapus.

  1. gan kok keluar "Error: Could not find or load main class CobaSWING", maksudnya apa gan ?? #newbe

    ReplyDelete
    Replies
    1. Coba download filenya yang udah ane kasih link di atas (share CobaSwing). Pastikan pengaturan JCreator pada menu Configures >> Options >> JDK Profiles sudah benar. Artinya, versi JDK yang terinstall pada komputer agan berada pada list paling atas.

      Runing lalu kabari hasilnya ya gan, thx

      Delete
    2. configures itu dimanaya gan? Di NetBeans nya apa dimana? Ane nyari gak ketemu gan

      Delete
    3. Ini pake JCreator gan, bukan NetBeans. Lebih simple dia. Bisa di download melalui link http://www.jcreator.org/download.htm

      Delete
Previous Post Next Post

TopMenu

Contact Form