JTable là một lớp con của JComponent và được dùng để tạo bảng với thông tin hiển thị trong nhiều hàng và cột. Khi một giá trị được chọn từ JTable, một TableModelEvent được sinh ra, được xử lý bằng cách triển khai giao diện TableModelListener. Chúng ta có thể thêm hoặc chèn một checkbox vào ô JTable bằng cách triển khai phương thức getColumnClass() kiểu Class.
Ví dụ
import java.awt.*;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
public class JCheckBoxJTableTest extends JFrame {
private JTable table;
private DefaultTableModel model;
public JCheckBoxJTableTest() {
Random rnd = new Random();
model = new DefaultTableModel(new Object[]{"Check Box1", "Check Box2", "Check Box3"}, 0) {
@Override
public Class> getColumnClass(int columnIndex) {
return Boolean.class;
}
};
for (int index = 0; index < 10; index++) {
model.addRow(new Object[]{rnd.nextBoolean()});
}
table = new JTable(model);
add(new JScrollPane(table));
setTitle("JCheckBoxJTable Test");
setSize(375, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new JCheckBoxJTableTest();
}
}
Kết quả
