JTable cellule éditable et non-éditable [Fermé]

Signaler
Messages postés
7
Date d'inscription
mercredi 19 décembre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
-
 Chepo -
Bonjour,
Je programme en Java 1.6.
J'aimerais savoir s'il est possible de spécifier les cellules éditables et non éditables dans une JTable.
Par défaut, toutes les cellules sont éditables. Est-ce qu'il est possible de dire que certaines cellules ne peuvent pas être éditées?
Merci

2 réponses

Messages postés
1
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
22 janvier 2008
4
Bonjour!

Il faudra créer un TableModel personnalisé, où tu override la fonction isCellEdiatble();


public class MyTableModel extends DefaultTableModel {

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        
        //ici la cellule (1, 2) est non-editable
        if (rowIndex == 1 && columnIndex == 2) return false;
        
        //le reste est editable
        return true;
    }
}



si tu veux qu'une colonne entière soit non editable tu teste uniquement sur l'index de la colonne :
if (columnIndex == 5) return false; //ici la colonne 5 n'est pas éditable.

Voilà, bon code
4
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 71249 internautes nous ont dit merci ce mois-ci

Encore plus facile si on ne veux pas créer une classe supplémentaire pour diverses raisons:

JTable aTable = new JTable(list,columns) {

public boolean isCellEditable(int row, int column) {

return false;

}

};
4
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 71249 internautes nous ont dit merci ce mois-ci