07 January 2016

Membuat Link pada JTable dengan Java GUI

Maksud link pada JTable yaitu membuat suatu link dari JTable ke JTextFiled atau Palette lainya, tujuannya agar JTable lebih terlihat atraktif sehingga saat user mengklik salah satu record yang berada pada JTable secara otomatis record-record tersebut akan tampil pada JTextField masing-masing kolom.

Perhatikan gambar berikut ini :


Namun saat salah satu record, misalnya record pertama di klik maka akan tampil data-datanya pada JTextField yang berada disebelah kanan.


Setelah kita mengetahu alur kerja nya maka kita persiapkan untuk membuat programnya :

Nama
Propertie
Keterangan
jTable1
Name
jTableData
jTextField1
Name
TxtNama
jTextField2
Name
TxtAlamat
jTextField3
Name
TxtKota

Code :

package CAMPUR;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;

public class Link_Table extends javax.swing.JFrame {
    DefaultTableModel DftTabMode;

public void LihatData(){
        setTitle("BELAJAR MENU & TABLE");
        String[] baris = {"Nama", "Alamat", "Kota"};
        //Recordnya di tarik dari array.
        DftTabMode = new DefaultTableModel(null, baris);
        jTableData.setModel(DftTabMode);
        String[][] data = {{"Kiki", "Jl. S. Parman", "Jakarta"},
            {"Diki", "Jl. Sam Ratulangi", "Bekasi"},
            {"Luli", "Jl. Casablanca 3", "Jakarta Barat"},
            {"Lili", "Jl. Casablanca 4", "Jakarta Timur"},
            {"Juli", "Jl. Casablanca 5", "Jakarta Utara"},
            {"Kili", "Jl. Casablanca 6", "Jakarta Selatan"},
            {"Bili", "Jl. Casablanca 7", "Jakarta Pusat"},
            {"Dili", "Jl. Casablanca 8", "Bandung"},
        };
        for (int i = 0; i < data.length; i++) {
            for (int j = 0; j < 1; j++) {
                String[] neodata = {data[i][0], data[i][1], data[i][2]};
                DftTabMode.addRow(neodata);
            }
        }
    }
   
    int row=0;
    public void Show(){
        row = jTableData.getSelectedRow();
        TxtNama.setText(DftTabMode.getValueAt(row,0).toString());
        TxtAlamat.setText (DftTabMode.getValueAt(row,1).toString());
        TxtKota.setText (DftTabMode.getValueAt(row,2).toString());
    }

private void formWindowOpened(java.awt.event.WindowEvent evt) {                                 
    LihatData();
}                                

private void jTableDataMouseClicked(java.awt.event.MouseEvent evt) {                                       
        try {
            if (evt.getClickCount()==1){
                Show();
                TxtNama.requestFocus();
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e);
        }
    }  
}

Selamat mencoba. Insya Allah di kesempatan lain saya akan bahas dimana recordnya di tarik dari database.

No comments:

Post a Comment