Tôi đã tạo một hàm tải dữ liệu vào JTable
. Mọi thứ đều hoạt động tốt ngoại trừ tất cả các ô trong bảng này đều có thể chỉnh sửa được. Btw, tôi đã sử dụng defaultTableModel
cho mô hình bảng. Im làm điều này trong Netbeans IDE. Hãy giúp tôi. Dưới đây là mã của tôi:Làm thế nào để tạo một jtable không thể chỉnh sửa trong java?
private void updateTable(String searchText){
if(searchText != null)
this._sqlCmd = this._sqlCmd + " WHERE "+columnCombo.getSelectedItem()+" LIKE '%"+searchText+"%'";
jTable1.setSurrendersFocusOnKeystroke(true);
table = (javax.swing.table.DefaultTableModel) jTable1.getModel();
try{
table.setRowCount(0);
}catch(Exception e){}
try {
ResultSet rs = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY).executeQuery(_sqlCmd);
while (rs.next()){
Object[] data = new Object[numOfCols];
for(int i=0; i<data.length; i++){
data[i] = rs.getObject(i+1);
}
table.addRow(data);
}
table.fireTableDataChanged();
} catch (SQLException ex) {
Logger.getLogger(FindContactGrid.class.getName()).log(Level.SEVERE, null, ex);
}
}
Đây là mã cập nhật các mô hình dữ liệu. Thay vào đó, các ô có thể chỉnh sửa phải thực hiện với JTable. –
Tôi đặc biệt khuyên bạn nên tránh các khối catch trống, chắc chắn nếu bạn bắt bất kỳ 'ngoại lệ' có thể có trong số – Robin
có thể trùng lặp của [Làm thế nào để tạo ra một JTable không thể chỉnh sửa] (http://stackoverflow.com/questions/1990817/how -to-make-a-jtable-non-editable) – Math