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] Check Box dans une cellule


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut [JTable] Check Box dans une cellule
    Bonjour a tous,

    Je viens de récupérer un projet dans lequel il y une jtable avec comme model un DataModel. Le DataModel est initialisé à l'aide d'un Vector. Je voudrais que chaque ligne d'une colonne soit une JcheckBox.

    Pourriez-vous me dire comment on fait merci d'avance.

  2. #2
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346

  3. #3
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    j'ai deja lu les tutos, mon souci étant que la Jtable est créée avec une DataModel qui est créée avec un vector.

    De plus, j'ai essayé le tuto et j'ai true ou false qui apparait

  4. #4
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    class MyTableModel extends AbstractTableModel {
        private String[] columnNames = ...//same as before...
        private Object[][] data = ...//same as before...
    
        public int getColumnCount() {
            return columnNames.length;
        }
    
        public int getRowCount() {
            return data.length;
        }
    
        public String getColumnName(int col) {
            return columnNames[col];
        }
    
        public Object getValueAt(int row, int col) {
            return data[row][col];
        }
    
        public Class getColumnClass(int c) {
            return getValueAt(0, c).getClass();
        }
    
        /*
         * Don't need to implement this method unless your table's
         * editable.
         */
        public boolean isCellEditable(int row, int col) {
            //Note that the data/cell address is constant,
            //no matter where the cell appears onscreen.
            if (col < 2) {
                return false;
            } else {
                return true;
            }
        }
    
        /*
         * Don't need to implement this method unless your table's
         * data can change.
         */
        public void setValueAt(Object value, int row, int col) {
            data[row][col] = value;
            fireTableCellUpdated(row, col);
        }
        ...
    }
    Tiré du tuto ! Le getColumnClass est important car il permet de dire à la table quel type de donnée elle doit afficher. Si tu ne lui dis pas que c'est un Boolean, alors il va afficher true ou false.

    Tu peux aussi faire du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        public Class getColumnClass(int c) {
            switch (c) {
                case 0: // colonne 0
                    return Object.class;
                case 1: // colonne 1
                    return Boolean.class;
                // ...
            }
            return getValueAt(0, c).getClass();
        }

  5. #5
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    Merci de la réponse je n'avais vu cette exemple

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

Discussions similaires

  1. [XL-2003] Check Box dans une cellule
    Par juju1988 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 13/09/2010, 11h59
  2. Check box dans une JTable
    Par Mischka dans le forum Composants
    Réponses: 1
    Dernier message: 24/07/2007, 13h58
  3. inclure un check box dans une table
    Par krikete13 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 03/06/2007, 13h46
  4. [JTable] Un JButton dans une cellule
    Par Sarrus dans le forum Composants
    Réponses: 19
    Dernier message: 31/08/2005, 16h29
  5. [JTable] Un ScrollPane dans une cellule
    Par Colonel Renard dans le forum Composants
    Réponses: 3
    Dernier message: 25/07/2005, 16h54

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