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 :

problème de lignes supprimées dans une JTable


Sujet :

Composants Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 35
    Points
    35
    Par défaut problème de lignes supprimées dans une JTable
    Bonsoir à tous,

    un petit soucis de suppression de lignes dans JTable construite sur une classe ListeArticlesModel qui hérite de AbstractTableModel. J'affiche donc ma JTable dans un JScrollPane.

    J'ai besoin de supprimer des lignes de cette JTable, ce que je fais c'est ok, mais le probleme c'est qu'en retirant les lignes, elles sont passées à null, ce qui m'éfface effectivement la ligne mais me laisse une ligne blanche...

    Petit exemple pour m'expliquer, si j'ai 10 lignes au départ et que j'enlève les 3 premières lignes, je voudrais obtenir les 7 lignes résultantes au début et pas 3 lignes blanches puis en dessous les 7 restantes.

    voici les extraits de codes :
    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
     
     
    ....
     
    protected JTable listeResultat = null;
    protected ListeArticlesModel listeResultatModel = null;
     
    ...
     
    // On parcourt tous les articles...
    for ( int cpt = 0 ; cpt < listeResultatModel.getRowCount(); cpt++ )
    {				
        // ... et on retir les codes barre qui ne répondent pas au critère
       if ( !( listeResultatModel.getValueAt(cpt, colonneCB).equals(codeBarre.getText()) ) ) 
       {
          listeResultatModel.getMap().remove(cpt);
       }				
    }
    pour info, colonneCB est un int qui correspond au numéro de colonne qui permet de tester le code barre du produit recherché ( qui est renseignée dans le JTextField codeBarre.

    Voilà c'est peut-être un peu long comme explication, mais c'est pour essayer d'être le plus clair possible. Autre précision : il est claire que pour 10 lignes ça ne serait pas un drame d'avoir des lignes blanches, mais dans les faits j'aurais prêt de 10 000 lignes!

    Avez-vous une idée pour résoudre ce problème ?

    Manu.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Points : 635
    Points
    635
    Par défaut
    appelle fireTableDataChanged sur le modèle

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 35
    Points
    35
    Par défaut
    C'est bien ça on faisait un fireTableStructureChanged.... donc ça ne le faisait pas!

    Merci à toi, the-gtm.

    Manu.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/04/2013, 22h06
  2. Supprimer les lignes dans une JTable
    Par sylvainkouo dans le forum Débuter
    Réponses: 2
    Dernier message: 18/01/2013, 02h33
  3. Epaissir une ligne dans dans une JTable
    Par daninho dans le forum Composants
    Réponses: 9
    Dernier message: 26/01/2006, 15h43
  4. [Jtable] problème de suppression dans une Jtable
    Par gianni17 dans le forum Composants
    Réponses: 1
    Dernier message: 02/12/2005, 19h36
  5. [MySQL] Supprimer une ligne afficher dans une base de donnée
    Par julienchpt dans le forum PHP & Base de données
    Réponses: 31
    Dernier message: 14/10/2005, 16h45

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