begin process at 2012 02 15 12:42:17
  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

récupérer donnée Boolean sur une table [ par ulysse00 ] salut je veux bien récupérer les données d'une table avec un champ booléen mais ça marche pas la base de donnée oracle voila comment j'ai crée la t Java jTable [ par armstrong0000 ] Bonjour, j'ai un petit problème lié à une table remplie à partir d'une BD Dans ma base j'ai une donnée de type booléen naturellement dans la table ca problème affichage JTable [ par floflo69290 ] Bonjour,J'ai une problème d'affichage de mon JTable.Dans une classe je récupère mes informations sur la table client :public static ResultSet getAll() afficher les elements d'une table oracle dans Jtable? [ par raufito ] Bonsoir, je dois faire une application java sous eclipse qui affiche les éléments d'une table de ma bdd-oracle dans une jtable; le problème c'est que echiquier en java avec un JTable [ par marlyo69 ] bonjour, alors voila dans le cadre du développement d'un jeu d'échec en java, je réalise une interface graphique. pour l'échiquier, j'ai opté (à tort) Comment remplir Table dans ma BD depuis un JTable [ par redbar ] Bonjour à tous Je cherche comment parvenir à remplir ma table dans ma Base e données depuis une JTable, Mais j'avoue que je bute depuis quelques jours Renderer et JTable [ par new_object ] je n'arrive pas afficher correctement mes données dans le composant JTable.j'ai créer 3 classes :class MonModel extends AbstractTableModel {.....}clas tri de colonne dans un jtable [ par nam90 ] bonjour à tous,voilà de puis quelques temps j'essaye de trier les colonnes de ma jtable et ça marche bien, le seul problème se trouve sur les colonnes mise à jour de ma base de données [ par edgardjok ] bonjour, j'ai ecrire un code qui me permet de recuperer toutes les informations contenues dans ma base de donnée et les affiche dans une Jtable ,j'ai Jtable color renderer qui empeche la selection de la ligne [ par tomski ] Bonjour, Voila jai une jtable et une classe "color": jarrive a modifier la couleur de mes cellules en fonction de certaines valeurs, par contre la l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 1,763 sec (3)

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