IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

colorier ligne de mon JTreeTable


Sujet :

AWT/Swing Java

  1. #1
    Membre éclairé Avatar de L4BiN
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2006
    Messages : 432
    Par défaut colorier ligne de mon JTreeTable
    J'ai un JXTreeTable composé de la manière suivante.

    une racine qui possède 10 fils de premiere génération.

    chacun des 10 fils de premiere génération possède 5 fils de seconde génération.

    J voudrai colorier les lignes de la JTreeTable de la manière suivante.
    pour un fils sur deux (alternativement) une ligne verte, une ligne blanche.

    tout les fils de seconde génération sont de ma meme couleur que leur pere(fils premiere génération).

    pour réussir il me manque juste de savoir comment colorier une ligne donnée de la JXTreeTable.

    merci d'avance

  2. #2
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    En redéfinnissant ton TableCellRenderer et en l'affectant à ta JXTreeTable

  3. #3
    Membre éclairé Avatar de L4BiN
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2006
    Messages : 432
    Par défaut
    a quel endrois je redefini??

    au meme moment que je cree mon DefaultTreeTableModel??

  4. #4
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    1/ Tu crées une classe qui hérite de TableCellRenderer, et tu redéfinis la méthode getTableCellRendererComponent pour faire ce dont tu souhaites...

    2/ tu affectes un objet de ton TableCellRenderer redéfinis juste après la création de ton JXTreeTable

  5. #5
    Membre éclairé Avatar de L4BiN
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2006
    Messages : 432
    Par défaut
    c'est ce que j'essai de faire mais le probleme est que la couleur de la ligne est défini dans la class hérité de TreeNode.

    Et en redéfinissant le getTableCellRendererComponent je n^'arrive pas à récupérer l'object TreeNode afin de récupérer la couleur.

    comment doit je faire?

  6. #6
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    Alors ce n'est pas le TableCellRenderer dont tu as besoin, mais du TreeCellRenderer... Tu le redéfinis, et tu utilises ensuite la méthode JXtreeTable.setCellRederer(TreeCellRenderer)

  7. #7
    Membre éclairé Avatar de grabriel
    Inscrit en
    Septembre 2006
    Messages
    946
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 946
    Par défaut
    Salut,

    J'ai déjà fait quelque chose de semblable mais pour une JTable... tu peux toujours t'en inspirer pour faire ce que tu veux faire. (A adapter d'après les conseils donnés au-dessus)

    Vu que je rempli mon tableau avec des montants calculés etc... j'en profite pour mettre la valeur d'une couleur dans une colonne, que je n'affiche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    class ColorTable extends DefaultTableCellRenderer{		
    		public Component getTableCellRendererComponent(JTable table,
    			Object value,boolean isSelected,boolean hasFocus,int row,int column){
    				//je récupère la valuer de la couleur que j'ai défini lors du remplissage de la table dans la colonne 6
    				Object val = table.getModel().getValueAt(row, 6);
    				//si c'est vide alors couleur par défaut
    				if (val == "")
    					val=135;
    				//en passant j'alligne le contenu des deux colonnes suivantes à droite
    				if (column == JournalTableModel.CREDIT_COL || column == JournalTableModel.DEBIT_COL)
    					setHorizontalAlignment(SwingConstants.RIGHT);
    				else
    					setHorizontalAlignment(SwingConstants.LEFT);
     
    				int col = Integer.parseInt(val.toString());
    //j'applique ma couleur au fond de la cellule
    				setBackground(new Color(col,col,col));
     
    		        return super.getTableCellRendererComponent(table,value,isSelected,
    		        		hasFocus,row,column);
    		}
    	}

Discussions similaires

  1. Cacher les lignes de mon tableau
    Par Kyvin dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/09/2006, 17h11
  2. J'ai un problème avec la mise en ligne de mon site web
    Par elodie13 dans le forum Internet
    Réponses: 29
    Dernier message: 28/08/2006, 20h08
  3. Ligne de mon listview
    Par omgirl dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 11/07/2006, 12h57
  4. colorier ligne dans un TRichEdit
    Par didi59650 dans le forum Composants VCL
    Réponses: 7
    Dernier message: 14/04/2006, 14h10
  5. Saut de ligne dans mon fichier?
    Par cchampion2fr dans le forum Access
    Réponses: 1
    Dernier message: 14/09/2005, 17h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo