Halaman

Subscribe:

Main Menu

Kamis, Agustus 07, 2008

Ngisi data di JTable

dulu waktu masih kuliah ada tugas buat program pake java. sempet kesulitan saat mau nulis data ke table. bingung kesana-kemari nyari cara gimana agar bisa :D. tapi alhamdulillah akhirnya bisa juga :). caranya gini.

kita tinggal buat Abstract Table Model. kita tutunkan tiga method utamanya yaitu
- getColumnCount( )
- getRowCount( )
- getValueAt(int rowIndex, int columnIndex)

tiga itu intinya sech. tapi kalo mau nambah boleh seperti
- getColumnName( int columnIndex)
- isCellEditable( int rowIndex, int columnIndex)
- setValueAt(Object aValue, int rowIndex, int columnIndex)
- dll.
lihat aja di docs nya AbstractTableModel.
trus kalo udah tinggal kita set table model ini ke jtable kita :). contoh programnya kayak gini :


final String nmKolom[]={"kolom 1","kolom 2","...dst"};
final String data[][]={{"Data A1","Data A2","...dst"},
{"Data B1","Data B2","...dst"},
{"Data C1","Data C2","...dst"}};
TableModel model=new AbstractTableModel(){

public int getColumnCount() {
// TODO Auto-generated method stub
return nmKolom.length;
}
public String getColumnName(int column){
return nmKolom[column];
}

public int getRowCount() {
// TODO Auto-generated method stub
return data.length;
}

public Object getValueAt(int rowIndex, int columnIndex) {
// TODO Auto-generated method stub
return data[rowIndex][columnIndex];
}
};

JTable jtable1=new JTable();
jtable1.setModel(model);



2 komentar:

sp412ky mengatakan...

mas.. saya mo nanya..
misalnya ada table dengan kolom kode, nama, harga.. gimana caranya pada saat kita mengisikan kolom kode trus kolom nama ama harga secara otomatis datanya muncul sesuai dengan yang ada didatabase.. pengisian kode langsung di jtable nya..
saya sudah nyoba tapi gak berhasil..

Ali mengatakan...

kalau mau make jtable dengan database. lebih baik pake jdbtable punyanya borlang. lebih mudah penggunaannya.. tapi kalau mau manual.. kamu kasih listener pada JTablenya... jika kolom kode dirubah panggil database ambil datanya dan insertkan ke table. seperti di atas.