[JTable] empecher l'edition

empecher l'edition [JTable] - Java - Programmation

Marsh Posté le 13-11-2004 à 18:46:12    

Salut,
 
je voudrais savoir comment empecher l'edition (double click) d'une JTable. Je trouve pas!
 
Pendant que j'y suis : je remplis ma JTable avec des string. Comment changer la couleur de fond d'une cellule?
 
Merci!

Reply

Marsh Posté le 13-11-2004 à 18:46:12   

Reply

Marsh Posté le 13-11-2004 à 20:47:38    

le plus simple est de redefinir ton JTableModel  
tu redfinie la methode isCellEditable de la maniere suivante :  
 boolean  isCellEditable(int rowIndex, int columnIndex) {
return false;
}
 
pour chnager la couleur du fond , il faut reagrder du cote du setCellRenderer dans la classe tablecolumn

Reply

Marsh Posté le 14-11-2004 à 19:35:04    

ok pour le premier point.
 
pour le 2nd :"il faut reagrder du cote du setCellRenderer dans la classe tablecolumn" le renderer ne va pas s'appliquer à toute la colone? je souhaite qu'il s'applique qu'a une cellule particuliere et pas a la colone...

Reply

Marsh Posté le 14-11-2004 à 19:55:20    

ruready > c'est à toi de trafiquer le renderer de la colone pour que quand il va chercher le composant pour peindre la cellule en question, le composant renvoyé se peigne avec la couleur de fond spéciale.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 15-11-2004 à 10:08:19    

ok, je vais essayer de voir comment ca marche tout ca... Merci

Reply

Marsh Posté le 15-11-2004 à 11:26:52    

J'ai un autre probleme avec les JTables : je veux mettre un Compomnent dans une cellule (J'ai essayé avec un JButton et un JLabel), mais au lieu de me "dessiner" le composant, je vois aparaitre sa description dans la case (comme si je faisait un ToString()).
Comment dois-je faire?

Reply

Marsh Posté le 15-11-2004 à 16:27:42    

j'ai créé ma classe implementant TableCellRenderer et tout fonctionne c'est bon

Reply

Marsh Posté le 15-11-2004 à 20:12:45    

oui, c'est bien ce qu'il fallait faire.


---------------
trainoo.com, c'est fini
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed