Cases indécochables dans JTable

sleep Messages postés 68 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 10 mai 2007 - 27 avril 2004 à 13:22
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 - 28 avril 2004 à 09:06
Bonjour,

J'ai une JTable que j'ai construit à partir d'un DefaultTableModel (enfin d'une classe que j'ai crée qui hérite de DefaultTableModel) qui contient entre autre des Boolean (représentés par des cases à cocher dans la Table) , et j'aimerais pouvoir, sous certaines conditions, faire en sorte que certaines colonnes de ma table ne puissent pas etre modifiées (autrement dis, que les cases à cocher qui sont dessus ne puissent pas etre cochées/décochées).

Il existe des méthodes pour JTable permettant de faire en sorte que certaines colonnes soient éditables ou non; mais ces méthodes la n'existent pas pour les TableModels.

Comment puis-je faire alors ?
Merci de bien vouloir m'aider.
(c'est p'tet pas hyper clair comme probleme)
A voir également:

3 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
27 avril 2004 à 14:00
Salut,

il y a la méthode setValueAt qui te permet de modifier une valeur d'une colonne. Donc en la surchargeant tu peux définir quelles colonnes peuvent être modifiées.
0
sleep Messages postés 68 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 10 mai 2007
27 avril 2004 à 14:18
Merci pour la réponse, mais comme je suis d'humeur parresseuse, je me suis finalement contenté d'afficher un texte (non-applicable) à la place des cases que je ne voulais pas modifier.

C'est pas une solution en soi, mais dans mon cas, c'est tout aussi bien.

Merci encore !
0
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
28 avril 2004 à 09:06
Salut,
sinon, ya une autre solution qui est de surcharger la méthode
isCellEditable

public boolean isCellEditable(int row, int column) {
return (column>2); //Pour toutes les colonnes dont le
//numéro est supérieure à 2, elles sont editables
}
0
Rejoignez-nous