2011-11-28 43 views
10

Tôi đang cố gắng tạo một JTable chỉ hiển thị dữ liệu và không cho phép bất kỳ chỉnh sửa hoặc lựa chọn nào. Tôi đặt tất cả các ô không thể chỉnh sửa bằng cách chạy:Đặt tất cả các ô JTable không thể chọn được

TableModel model = new DefaultTableModel(data, titles) { 
    public boolean isCellEditable(int rowIndex, int mColIndex) { 
     return false; 
    } 
}; 

Nhưng bây giờ tôi đang cố gắng làm cho tất cả các ô không thể chọn được. Tôi đã tìm thấy phương thức setRowSelectionAllowed cho phép tôi vô hiệu hóa toàn bộ hàng đang được chọn khi một ô được chọn, nhưng điều đó đã không ngăn không cho chọn ô. Tôi đã xem xét các phương pháp của DefaultTableModel nhưng tôi không thấy bất kỳ phương thức isCellSelectable nào. Bất kỳ đề xuất?

Trả lời

18

Ngoài việc trả lại false từ isCellEditable(), hãy thêm các lời gọi này.

table.setFocusable(false); 
table.setRowSelectionAllowed(false); 
+0

Hoàn hảo! Cảm ơn! – BitFiber

Các vấn đề liên quan