isCellEditable true для определенной строки в выбранном флажке, когда isCellEditable false в флажке снят

введите здесь описание изображения

Я хочу отключить редактирование от столбца 1 до столбца 9, когда флажок столбца 0 имеет значение false, а значение флажка равно true, разрешить редактирование столбца 1 до столбца 9, когда столбец 0.... Как это сделать?


person pixylife    schedule 11.05.2013    source источник
comment
см. противоположную идею   -  person mKorbel    schedule 11.05.2013


Ответы (1)


Вам нужно переопределить метод isCellEditable из TableModel... например

public boolean isCellEditable(int rowIndex, int columnIndex) {
    boolean isEditable = false;
    if (columnIndex >= 1 && columnIndex <= 9) {
        Object value = getValueAt(rowIndex, 0);
        if (value instance Boolean) {
           isEditable = !((boolean)value);
        } 
    } else {
        // Other columns...
    }
    return isEditable
}

Ознакомьтесь с TableModel и Как использовать таблицы подробнее...

person MadProgrammer    schedule 11.05.2013
comment
+1 аналогичный способ решался здесь несколько раз (отредактировать, я бы проверил логическое значение, а затем разрешил индекс строки) - person mKorbel; 11.05.2013