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 :

[JXtreeTable] Modifier le contenu


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 [JXtreeTable] Modifier le contenu
    Bonjour,

    J'ai un petit problème sur une partie de mon programme, en gros j'ai une JXTreeTable et je voudrai en changer le contenu, i.e. la vider et la re-remplir.
    Quand j'applique mon code j'ai le message d'erreur suivant :

    Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: org.jdesktop.swingx.JXTreeTable$TreeTableModelAdapter cannot be cast to com.aaa.TableModel.CompteTreeTableModel
    at com.aaa.ihm.ActionComptes$16.actionPerformed(ActionComptes.java:829)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    Ma ligne en cause (829) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((CompteTreeTableModel) tableCompte.getModel()).vide();
    J'ai fait un treeTable model que voici :

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    public class CompteTreeTableModel extends DefaultTreeTableModel {
    	public static final int COMPTE_COL = 0;
    	public static final int NOTE_COL = 1;
    	public static final int NUMERO_COL = 2;
    	public static final int ID_COL = 3;
     
    	private TreeNode node;
    	private String[] colonnes = {"Compte","Note","",""};
     
    	public CompteTreeTableModel(TreeNode node) {
    		super(node);
    		this.node = node;
    	}
     
     
    ..............
     
    	/**
             * Vide le contenu de l'arbre
             *
             */
    	public void vide(){
    		node = null;
    	}
    	/**
             * remplie l'arbre 
             *
             */
    	public void remplie(List<Compte> liste, List<Titre_Compte> listeT_C){
                    //créer un DefaultMutableTreeNode à partir de listes
    		node = Comptes.construitArbreCompte(liste, listeT_C, false);
    		fireTreeNodesChanged(node, new TreePath[]{new TreePath(node)}, null, null);
    	}
    Je suis tout ouïe à toutes les critiques et/ou suggestions, qui pourraient résoudre mon problème.

    MERCI d'avance.

  2. #2
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Il te dit qu'il n'arrive pas à caster le modèle de la table (tableCompte.getModel()) en CompteTreeTableModel.

    Ca veut dire que le modèle de la JXTreeTable n'est pas un CompteTreeTableModel.

  3. #3
    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
    Voila l'instantiation de ma table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JXTreeTable tableCompte = new JXTreeTable(new CompteTreeTableModel(Comptes.construitArbreCompte(liste,listeT_C,true)));
    la classe CompteTreeTableModel avec le constructeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public class CompteTreeTableModel extends DefaultTreeTableModel {
     
    	public CompteTreeTableModel(DefaultMutableTreeNode node) {
    ...
    et le construitArbreCompte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public static DefaultMutableTreeNode construitArbreCompte(List<Compte> liste,List<Titre_Compte> listeT_C, boolean affTitreCompte){
    ...
    Je comprends pas, y'a quoi qui cloche??? Pourtant ma table s'affiche bien avec les colonnes définie dans mon CompteTreeTableModel et affiche bien les objets suivant le getValueAt défini dedans.

    J'en ai marre je vais me pendre!!

  4. #4
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Essaie d'afficher la classe du modèle pour voir ce qui cloche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println(tableCompte.getModel().getClass());

  5. #5
    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
    Il m'affiche bien la meme classe que dans le message d'erreur...
    org.jdesktop.swingx.JXTreeTable$TreeTableModelAdapter au lieu de com.aaa.TableModel.CompteTreeTableModel

    Donc c'est dans ma création que ca va pas.

  6. #6
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    et si tu essaie avec getTreeTableModel ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Upload] Modifier le contenu d'une liste box automatiquemen
    Par Phenomenium dans le forum Langage
    Réponses: 7
    Dernier message: 16/01/2006, 21h42
  2. Modifier le contenu d'un DBEdit [query]
    Par Askarod dans le forum Bases de données
    Réponses: 15
    Dernier message: 08/12/2005, 14h47
  3. modifier le contenu de ma base
    Par dolphi dans le forum ASP
    Réponses: 2
    Dernier message: 22/08/2005, 17h17
  4. Réponses: 20
    Dernier message: 01/06/2005, 09h37
  5. modifier le contenu d'une table avec innerHTML
    Par francon81 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 31/05/2005, 09h02

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