Swing : Menyisipkan Baris Baru di Komponen JTable

Oleh : Reza Ervani

بسم الله الرحمن الرحيم

Untuk menyisipkan baris data ke komponen JTabel, kita perlu untuk menyisipkannya ke model tabelnya. Implementasi yang paling sederhana dari model tabel yang mendukung penyisipan baris data adalah DefaultTableModel.

Saat menyisipkan baris menggunakan DefaultTableModel.insertRow(), posisi dari baris baru mestilah dispesifikasikan. Posisi adalah lokasi antara baris. Sebagai contoh,jika ada dua baris di sebuah tabel, maka ada 3 kemungkinan posisi — 0, 1 dan 2. Menyisipkan baris pada posisi 0 akan membuat penambahan baris awal. Menyisipkan di posisi 2 akan membuat baris di bagian paling akhir.

Saat menyisipkan sebuah baris dengan nilai yang lebih rendah dari kolom, field yang berada paling kiri pada baris baru diberikan dengan nilai yang diberikan (kiri ke kanan) dan field tanpa nilai akan diset null. Saat menyisipkan baris dengan nilai yang lebih banyak dari kolom, maka nilai yang lebih akan diabaikan.


DefaultTableModel model = new DefaultTableModel();
JTable table = new JTable(model);

// Membuat sepasang kolom
model.addColumn("Col1");
model.addColumn("Col2");

// Membuat baris pertama
model.insertRow(0, new Object[]{"r1"});

// Menyisipkan sebuah baris sehingga menjadi baris pertama
model.insertRow(0, new Object[]{"r2"});

// Menyisipkan sebuah baris pada posisi p
int p = 2;
model.insertRow(p, new Object[]{"r3"});

// Menyisipkan sebuah baris ebelum baris kedua
int r = 1;
model.insertRow(r, new Object[]{"r4"});
// the new row is now the second row

// Menyisipkan sebuah baris setelah baris kedua
r = 1;
model.insertRow(r+1, new Object[]{"r5"});
// Baris yang baru tersebut sekarang menjadi baris ketiga

// Melebarkan suatu baris
model.insertRow(model.getRowCount(), new Object[]{"r5"});

About Reza Ervani 430 Articles
Adalah pendiri programming.rezaervani.com -

Be the first to comment

Leave a Reply

Your email address will not be published.


*


This site uses Akismet to reduce spam. Learn how your comment data is processed.