重写DefaultTableModel的isCellEditable返回false就行如public class MyTableModel extends DefaultTableModel{public boolean isCellEditable(int row, int col) {

return false;

}至于你说的特定row不可编辑,你可以在点"审核"后,把此row的index传到MyTableModel里。然后在isCellEditable里判断,再确定返回值是true还是false。

解决方案 »

  1.   

    如:
    public class MyTableModel extends DefaultTableModel{ private int[] editables;public int[] geteditables()
    {
           return editables;
    }public void seteditables(int[] rows) {
    this.rows=rows;
    }public boolean isCellEditable(int row, int col) { //判断当前row是否在editables里,如果在
    return false; 
    否则
    return true;}点审核时,将选中的rowindex加到editables里。 
      

  2.   

    isCellEditable方法是可以重寫  但是感覺很難實現動態的控制,比如某一行有特殊值就不可以編輯 ~