Kamis, 14 Maret 2013

JAVA - Membuat tabel

Akhirnya saya bisa juga memperbaiki postingan ini. Sekarang kita akan belajar membuat tabel sederhana dengan sistem GUI. Kita perkenalan dulu dengan GUI ya.

Menurut wikipedia bahasa Indonesia, ensiklopedia bebas  :
Dalam teknologi komputasi, antarmuka pengguna grafis atau APG (Inggris: Graphical User Interface atau GUI) adalah jenis antarmuka pengguna yang menggunakan metoda interaksi pada piranti elektronik secara grafis (bukan perintah teks) antara pengguna dan komputer.

GUI menjadi salah satu faktor kemudahan dalam penggunaan komputer, piranti bergerak seperti pemutar MP3, pemutar media portabel atau piranti permainan, peralatan rumah tangga, dan peralatan kantor. GUI menggambarkan informasi dan perintah yang tersedia untuk pengguna menggunakan ikon grafis. Contoh: Microsoft Windows, MacOS dan Xwin menggunakan jenis GUI yang berbeda.

Kita coba program daftar nilai yang sudah kita buat kemarin dijadikan GUI.
Jika tidak paham logikanya, silahkan lihat flowchartnya daftar nilai dahulu. Pahami sampai bener-bener paham.


Baiklah jika sudah paham. Kita awali dengan membuat project baru.
Setelah itu kita taruh objek tabel dengan menggunakan tool table di jendela pallate. Lihat gambar


Setelah itu langsung pilih tab Souce. Lihat gambar diatas.

Kita akan masuk pada kode pemrograman. Di situ kita buat array untuk menampung data.
Ketik kode dibawah ini tepat dibawah :

public class daftarnilai extends javax.swing.JFrame {

    private String data[][]={
                            {"Sofyan Antoniawan","50","90","80"},
                            {"Teguh","70","90","70"},
                            {"Intan","40","90","80"},
                            {"Musrifah","50","40","20"},
                            {"Guntar","50","90","40"},
                            {"Angga","50","50","50"},
                            {"Oho","60","70","40"},
                            {"Bingtang","70","60","40"},
                            {"Bulah","60","40","60"},
                            {"Levyn","70","50","80"},
                            {"Surya","30","70","50"},
                            {"Laros","40","50","70"},
                            {"Bonce","80","50","80"},
                            {"Anti","80","70","50"},
                            {"Mundar Mandir","50","90","50"},
                            };


Setelah itu kita buat fungsi / method untuk mempermudah dalam mengubah nilai bilangan menjadi nilai angka. Contoh 80 -> A dan seterusnya.
Silahkan ketikkan kode berikut :


    private String NiBilToHrf(double n){
        String a = null;
        
        if (n>80){
            a="A"; 
        }else if(n>=75){
            a="B+";
        }else if(n>=70){
            a="B";
        }else if(n>=60){
            a="C+"; 
        }else if(n>=55){
            a="C";
        }else if(n>=40){
            a="D";
        }else if(n<40){
            a="E"; 
        }
        
        return a;
    }


Nah, setelah itu kita ketikkan kode untuk memproses array di atas dan menggunakan method di atas menjadi data-data yang kita inginkan dan ditampilkan pada objek tabel yang telah kita buat tadi.


        String head[]= {"No.","Name","Home Work","Exam Aver.","Final Exam","Average","Nilai Huruf","Status"};
        DefaultTableModel TabelModel=new    DefaultTableModel(null,head);
        tblNilai.setModel(TabelModel);
        
        
        
        TableColumnModel tcm=tblNilai.getColumnModel();
        TableColumn tc0=tcm.getColumn(0);
        TableColumn tc1=tcm.getColumn(1);
        TableColumn tc2=tcm.getColumn(2);
        TableColumn tc3=tcm.getColumn(3);
        TableColumn tc4=tcm.getColumn(4);
        TableColumn tc5=tcm.getColumn(5);
        TableColumn tc6=tcm.getColumn(6);
        TableColumn tc7=tcm.getColumn(7);
        
        tc0.setMaxWidth(30);
        tc1.setMaxWidth(150);
        tc2.setMaxWidth(80);
        tc3.setMaxWidth(80);
        tc4.setMaxWidth(80);
        tc5.setMaxWidth(80);
        tc6.setMaxWidth(80);
        tc7.setMaxWidth(200);
        
        double sd=0,a,b,c,nh;
        for (int i=0;i<data.length;i++){
            a=Double.parseDouble(data[i][1])*45/100;
            b=Double.parseDouble(data[i][2])*35/100;
            c=Double.parseDouble(data[i][3])*20/100;
            sd+=a+b+c;
        }
        
        sd=sd/data.length;
        
        String tampil[][]=new String[15][8];
        
        for (int i=0;i<data.length;i++){
            tampil[i][0]=String.valueOf(i+1);
            tampil[i][1]=data[i][0];
            tampil[i][2]=data[i][1];
            tampil[i][3]=data[i][2];
            tampil[i][4]=data[i][3];
            
            a=Double.parseDouble(data[i][1])*45/100;
            b=Double.parseDouble(data[i][2])*35/100;
            c=Double.parseDouble(data[i][3])*20/100;
            nh=a+b+c;
            
            tampil[i][5]=String.format("%.2f",(a+b+c));
            
            tampil[i][6]=NiBilToHrf(nh);
            
            if (nh>=sd){
                tampil[i][7]="Pertahankan prestasimu";
            }else{
                tampil[i][7]="Belajar lebih giat lagi";
            }
            TabelModel.addRow(tampil[i]);
        }
        
        lRata.setText(String.valueOf(sd)); //lrata adalah nama objek label Rata-rata yang kita buat


Lihat gambar.


Nah, kalau sudah tdk ada error silahkan di Run dengan cara klik kanan Source Code di atas dan pilih Run File atau langsung dengan menekan tombol kombinasi Shift+F6.

Lihat hasilnya :



Sekian tutorial pembuatan tabel ini.
Jika ada  salah kata mohon maaf dan jika ada error dan yang ditambahkan silahkan berkomentar untuk bertanya dan menambahkan. Terimakasih

4 komentar: