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

Composants Java Discussion :

[JTable] Rafraichir une JTable


Sujet :

Composants Java

  1. #1
    Membre habitué Avatar de nesbla
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 220
    Points : 139
    Points
    139
    Par défaut [JTable] Rafraichir une JTable
    Bonjour,

    J'essaye desespèrement de rafraichir ma jTable... J'ai essayé les solutions proposées dans les précédents post mais rien de semble y faire.

    Voila mon problème :
    J'ai inititialisé la JTable dans un JScrollPane au préalable sans rien dedans.
    Je remplis mes deux vecteurs (vecteur de vecteurs ligne et vecteur colonne).
    je récupere l'instance de la Jtable par la méthode getJTable() (eclipse).
    Je la réinitialise en lui appliquant les vecteurs.
    Je fais un revalidate et un repaint.
    Rien n'apparait... J'ai vérifié le contenu de mes vecteurs mais ils semblent etre bon donc je ne comprends pas ce problème d'affichage...

    Voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	public void actionPerformed(java.awt.event.ActionEvent e) {    
     
    					JTable MaJTable = getJTable();
    					Vector Vrep = GestAff.Rechercher(getJTextField_ListMotCle());
    					DefaultTableModel defaultTable=new DefaultTableModel((Vector)Vrep.elementAt(0),(Vector)Vrep.elementAt(1)); 
    					//defaultTable.fireTableDataChanged();
    					MaJTable = new JTable(defaultTable);
    					getJTable().revalidate();
    					getJTable().repaint();
     
    				}
    Merci d'avance
    ··· Champion des excuses bidons ··· Je viens d'apprendre que les ventes de voitures ont encore baissé de 7% en France. Y'en a marre de ces pirates qui téléchargent les voitures sur internet !

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 23
    Points : 31
    Points
    31
    Par défaut
    Normalement, en utilisant fireTableDataChanged(), Swing rafraichit ta JTable.

    Essaye ce tutoriel


    @+

  3. #3
    Membre habitué Avatar de nesbla
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 220
    Points : 139
    Points
    139
    Par défaut
    J'a déjà essayé.... D'ailleurs dans mon code il est mis en commentaire pourtant cela ne marche pas. Peut etre je ne sais pas me servir de cette méthode.



    A quel moment dois-je y faire appel ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    DefaultTableModel((Vector)Vrep.elementAt(0),(Vector)Vrep.elementAt(1));
    defaultTable.fireTableDataChanged();
    MaJTable = new JTable(defaultTable);
    ··· Champion des excuses bidons ··· Je viens d'apprendre que les ventes de voitures ont encore baissé de 7% en France. Y'en a marre de ces pirates qui téléchargent les voitures sur internet !

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 23
    Points : 31
    Points
    31
    Par défaut
    Sinon, essaye de créer un model (Une classe qui hérite de AbstractTableModel )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    maClasseModel monModel = new maClasseModel();
    JTable table = new JTable(monModel);
    monModel.fireTableDataChanged();

  5. #5
    Membre habitué Avatar de nesbla
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 220
    Points : 139
    Points
    139
    Par défaut
    C'est bon j'ai trouvé la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Vector Vecteur = new Vector();
    			Vector VRows = new Vector();
    			Vector VColumn = new Vector();
     
    			Vecteur = GestAff.Rechercher(getJTextField_ListMotCle());
    			VRows = (Vector)Vecteur.elementAt(0);
    			VColumn = (Vector)Vecteur.elementAt(1);
     
    			DefaultTableModel defaultTable = (DefaultTableModel)jTable.getModel();
    			defaultTable = new DefaultTableModel(VRows,VColumn);
    			defaultTable.fireTableDataChanged();
    			jTable.setModel(defaultTable);
    Il faut dans un premier temps initialiser la premiere fois la jTable avec un DefautTableModel, puis ensuite on le récupère, le modifie, on utilise la méthode fireTableDataChanged() et enfin on le réattribue à la jTable.

    Merci
    ··· Champion des excuses bidons ··· Je viens d'apprendre que les ventes de voitures ont encore baissé de 7% en France. Y'en a marre de ces pirates qui téléchargent les voitures sur internet !

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

Discussions similaires

  1. Insertion d'une JTable dans une JTable
    Par Dark_TeToN dans le forum Composants
    Réponses: 16
    Dernier message: 14/10/2010, 16h18
  2. Inserer une Jtable dans une Jtable
    Par sylv179 dans le forum Composants
    Réponses: 2
    Dernier message: 22/12/2009, 12h30
  3. Rafraichir une jtable
    Par tit_oune dans le forum Composants
    Réponses: 5
    Dernier message: 12/04/2006, 15h00
  4. Comment rafraichir une JTable
    Par critok dans le forum Composants
    Réponses: 3
    Dernier message: 06/12/2005, 13h48
  5. Réponses: 4
    Dernier message: 09/02/2005, 10h44

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