java中jTable某一行是否可编辑

来源:百度知道 编辑:UC知道 时间:2024/05/25 05:15:12
我已经重写了tablemodel(MyTablemodel),问题是我现在这有多个表格,其中有些是允许编辑的(如个人信息等表格),有些是不允许编辑的(如数据库相关等表格), 我在isCellEditable方法里return了一个参数checkCellEditable,现在如果有jTable1可以编辑,jTable2不可编辑,怎么写这个逻辑?
---------------------------------------------------
1楼的,你两个if里的判断是什么东东啊,稍微说明下~
----------------------------------------------------
2楼的,我不是需要某些列可编辑或不可编辑,我是希望某个表格可编辑或不可编辑

类似这样:

tableModel = new DefaultTableModel(rulelist,columnName){
private static final long serialVersionUID = 1L;
public boolean isCellEditable(int row,int column){
if(isadding &&(row==ruleNumber-1)){
return true;
}else if (ismodifying &&(row==selectedruleNumber)) {
return true;
}else{
return false;
}
}
};

table = new JTable(tableModel);

tableModel = new DefaultTableModel(数据,表头){
public boolean isCellEditable(int rowIndex,int columnIndex) {
if(columnIndex!=0) return false;//这个是可以编辑的列
//if(rowIndex!=0) return false;
return true;
}
}
JTable tb = new JTable(tableModel);

这样可以,不过这样设置后那个选择的就没用了,不好看,还有另一种方法就是用AbstractTableModel