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][MODEL][RENDERER]Communication


Sujet :

Composants Java

  1. #1
    Membre habitué

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    120
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 120
    Points : 133
    Points
    133
    Par défaut [JTABLE][MODEL][RENDERER]Communication
    Bonjour a tous,


    En fait j'ai plusieurs questions :

    J'ai une Jtable, un model de table (AbstractTableModel) et un renderer(DefaultCellRenderer)

    1. Les données se trouvant au niveau du model sont dynamique. A tout moment je peux avoir une colonne en plus, une colonne en moins.
    J'avertis mon model via une methode qu'il faut recharger les données.
    ensuite je lui dis que la structureà changer (FireStructureDataChanged).
    Cependant après l'appel de cette méthode, le nombre de colonne qui aurait du changer reste au même nombre...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        Est ce que j'utilise le bonne event (fireTableStructureChanged()) ?


    2. Lors de l'affectation du renderer au Jtable, je ne connais que la colonne 0. Le renderer est valable pour toutes les cellules de mon tableau ... J'aimerais que lors du changement des données, mon renderer s'applique a toutes les cellules et pas uniquement aux cellules de la colonne 0.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       Quel event appeler pour ça ?
    Merci à tous pour vos réponse

    voici les quelques lignes de code :

    Application GUI :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        jTable2 = new JTable();
        TabCellRender tcr = new TabCellRender();
        jTable2.setModel(mst);
        jTable2.setDefaultRenderer(String.class,tcr);
        jTable2.setSelectionMode(ListSelectionModel.SINGLE_SELECTION );
        jScrollPane2.getViewport().add(jTable2);
        mst.fireTableStructureChanged();
    au niveau du modele c'est la methode setList qui est appellée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     public void setList(ArrayList ar){
        if(this.ar != null) this.ar.remove(this.ar.size()-1);
        this.ar = ar;
        MStagiaires ms = new MStagiaires();
        ms.setId(((MStagiaires)ar.get(0)).getId());
        ms.findById();
        ar.add(ms);
        fireTableStructureChanged();
      }

  2. #2
    Membre habitué

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    120
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 120
    Points : 133
    Points
    133
    Par défaut
    Pour la 2eme question, j'ai réussi à trouver. Par contre pour la premièren, je bloque toujours.

Discussions similaires

  1. [JTable] header renderer : pas d'effet
    Par Lady dans le forum Composants
    Réponses: 12
    Dernier message: 19/04/2007, 08h58
  2. [JTable][JComboBox] renderer et editor
    Par daedric dans le forum Composants
    Réponses: 1
    Dernier message: 25/05/2006, 18h29
  3. [Jtable] DefaultTableModel renderer des boolean
    Par lilou77 dans le forum Composants
    Réponses: 2
    Dernier message: 20/12/2005, 15h32
  4. [JTable] cell renderer
    Par biozaxx dans le forum Composants
    Réponses: 2
    Dernier message: 21/04/2005, 10h04
  5. [Swing]Case a cocher JTable, et Renderer
    Par bibx dans le forum Composants
    Réponses: 16
    Dernier message: 29/12/2004, 14h49

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