Coloration de certaines lignes jTable - Java - Programmation
Marsh Posté le 03-11-2006 à 19:44:31
Demande à Google : JTable + Color
Q : How can I set the color (or font) on a specific cell (row, column) in a JTable?
A : In order to set the color or font for a specific table cell you must create a custom TableCellRenderer. The easiest way to create one is to extend the DefaultTableCellRenderer.
Par exmple :
http://www.javaworld.com/javaworld [...] table.html
http://brassens.upmf-grenoble.fr/I [...] gTable.htm
Marsh Posté le 08-01-2007 à 22:44:32
Salut,
j'ai pas mal galérer pour trouver ça , et malheureusement , je n'ai plus les références de celui qui l'a créé; mais ça marche
Il faut créer une classe renderer telle que celle ci :
Citation : public class TraitementRenderer |
Puis mettre dans la classe qui traite la JTable le code ci dessous :
Citation : private void registerRendererForClass(JTable table, Class classe) { |
toujours dans la même classe :
Citation : tableau = new JTable(model); |
et enfin dans la classe qui étend l'AbstractTableModel on définit les lignes devant être coloriées
Citation : public boolean isEnded(int row) { |
Voila , je pense n'avoir rien oublié, une fois qu'on a comprit le code , on peut le réutiliser et le manipuler sans problème; ceci dit je l'aurai pas trouver tout seul
Marsh Posté le 03-11-2006 à 12:05:32
Bonjour,
Apres avoir lu plusieurs explications sur le sujet, je ne suis pas parvenu a mettre en place une solution efficace pour répondre à mon besoin.
Je créé un tableau avec jTable par l'interface graphique du netbeans. Je le remplis grace à un vecteur qui lit les informations depuis une base de données.
Parmis les informations, il y a une variable "Etat" pouvant prendre les valeurs "Oui" ou "Non".
Ce que je souhaite faire est simple dans l'idée, c'est requeter la base de données (dison un select * from ma_table) et inséréer les valeurs dans le jTable.
Dès que la colonne "Etat" du tuple courant est à "Oui", je souhaite colorer le background de la ligne en Vert, si c'est à "Non", le colorer en rouge.
J'ai pu lire qu'il fallait modifier le CellRenderer, mais sans grand succès quant à se mise en application dans mon soft. Pourriez vous m'aider à construire ce bout de code ?
Merci par avance.
Voici les quelques lignes de remplissage de ma jTable:
Message édité par lhpp le 03-11-2006 à 12:06:04