begin process at 2010 02 10 07:35:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

JTable et CellRenderer


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

JTable et CellRenderer

mercredi 25 avril 2007 à 12:16:17 | JTable et CellRenderer

le_totophe

Membre Club
Bonjour à tous,

J'utilise pour une de mes tables un Renderer spécifique (la table est une JTable avec le TableSorter de chez Sun) qui logiquement doit m'afficher une ligne en rouge lorsque la 2ème colonne comporte la valeur "2". Que je laisse volontairement sous forme de chaine de caractère.
Voilà le code de mon Renderer:

public class TablePigeRenderer implements TableCellRenderer

{

    public static final DefaultTableCellRenderer DEFAULT_RENDERER = new DefaultTableCellRenderer();


    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)

    {

        Component renderer = DEFAULT_RENDERER.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);

        ((JLabel) renderer).setOpaque(true);

        Color monRouge = new Color(248, 164, 171);

        Color background;

        if(!(isSelected))

        {

            if (table.getValueAt(row, 2).toString().compareTo("2") == 0) { background = monRouge; }

            else { background = Color.WHITE; }

            renderer.setBackground(background);

        }

        return renderer;

    }

}

Le problème est que ma table contient plusieurs colonnes de plusieurs types différents. Pour faire plus simple voici un exemple de données:

Object[][] data = { { new Boolean(false), new ImageIcon("toto.png"), "2", "PHRASE 1-1", new Integer(10000), "PHRASE 2-1"},

                            { new Boolean(true), new ImageIcon("tata.png"), "0", "PHRASE 1-2", new Integer(10000), "PHRASE 2-2"},

                            { new Boolean(false), new ImageIcon("titi.png"), "1", "PHRASE 1-3", new Integer(10000), "PHRASE 2-3"} };

Et au-lieu de m'afficher toute la ligne 1 (dans cette exemple) en rouge, seules les cellules de type String sont affichées en rouge.

Si quelqu'un pouvait m'aider à modifier celà ou à le recoder.

Merci d'avance à vous tous

jeudi 26 avril 2007 à 19:46:49 | Re : JTable et CellRenderer

le_totophe

Membre Club
Réponse acceptée !
Bon, voilà, je me réponds à moi même, c'est juste pour qu'il reste une trace si un jour quelqu'un à le même problème que moi.

En fait, c'est tout simple, il suffit de préciser pour chaque type le renderer que l'on veut.

ex:
jTable1.setDefaultRenderer(Object.class, new monRenderer());
jTable1.setDefaultRenderer(Integer.class, new monRenderer());
...

Voilou


Cette discussion est classée dans : table, jtable, boolean, phrase, renderer


Répondre à ce message

Sujets en rapport avec ce message

JTable liée à une table de ma base [ par nouroudiop ] Salut les gars,j'aimerais savoir comment on arrive à lier une JTable directement à une table de ma base pour pouvoir effectuer directement une mise à Combobox dans une jtABLE [ par perechev ] salut les gens, Est-ce quelqu'un saurait si on peut faire une table avec des combobox dedans? mais je voudrais choisir les cellules et pas que ce soit JTable, problème d'affichage [ par Kanouch ] Bonjour,j'essaie de créer une JTable à deux colonnes dans laquelle j'ajoute des éléments ligne par ligne. Je tape dans deux zones de texte et je stock Help Me : Imbrication de JTable [ par vinke00 ] Tout d abord boujour a tout hom. . .Mon probleme est le suivant : Comment faire pour que les objets d'une collone d'une JTable soit une autre JTable problème de couleur dans une JTable [ par jc_romeo ] BonjourJe voudrais mettre une couleur (ici rouge) en arrière fond pour chacune de mes cases de ma JTable(plus tard il y aura un algo qui permettra de JCombobox dans un JTable : getSelectedIndex, getSelectedItem... [ par largo_winzclav ] Bonjour et merci d'avance à tous ceux qui prendront le temps de m'aider,Dans une de mes applets, je fais apparaitre des cellules d'un JTable sous form Help JTable - Étudiante en détresse [ par EducJava ] Salut, J'ai vraiment besoin d'aide. Ca fait des jours que je tourne en rond. Je suis étudiante et dans un exercice que j'ai à faire, je dois implémen JTable et Renderer [ par seboune57 ] Bonjour a tous, j'aimerai appliquer un Render sur une seule colonne de ma JTable, comment dois-je faire!!!! Au secour !!! bouton delete dans une cellule d'unen JTable [ par empiret ] Bonjour, J'ai une JTable qui contient des lignes. Chaque ligne contient une cellule contenant un bouton 'delete'. Ce bouton sert a supprimer la ligne Jtable et evenement [ par sleep ] Bonsoir,Voici mon probleme de facon assez simplifiéeJe dispose d'une Jtable construite à partir c'une classe heritant d'un DefaultTableModel, et une d


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales