Computer >> Máy Tính >  >> Lập trình >> Java

Làm thế nào chúng ta có thể thêm / chèn một JCheckBox bên trong một ô JTable trong Java?


A JTable là một lớp con của JComponent và nó có thể được sử dụng để tạo một bảng với thông tin được hiển thị trong nhiều hàng cột . Khi một giá trị được chọn từ JTable, TableModelEvent được tạo, được xử lý bằng cách triển khai TableModelListener giao diện. Chúng tôi có thể thêm hoặc chèn một hộp kiểm bên trong ô JTable bằng cách triển khai getColumnClass () phương thức của một Lớp loại.

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();
   }
}

Đầu ra

Làm thế nào chúng ta có thể thêm / chèn một JCheckBox bên trong một ô JTable trong Java?