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] Impossible de modifier les cellules


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par défaut [JTable] Impossible de modifier les cellules
    Bonjour,

    comme l'indique le sujet du post, je n'arrive pas à modifier les cellules du tableur, et ce, depuis que je passe par une classe pour stocker les données.

    Dans ma classe principale:
    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
    public class Compta extends JFrame
    {
      private CTableDonnees m_tableDonnees; // La classe qui va gérer les données
     
      /.../
     
      public Compta()
      {
        super();
     
        JTable jTableur;
     
        /.../
     
        m_tableDonnees = new CTableDonnees();
        jTableur = new JTable(m_tableDonnees); // La classe des données dans le tableur
     
        /.../
     
        // On met tout ça dans la fenêtre:
        getContentPane().add(new JScrollPane(jTableur, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER), BorderLayout.CENTER);
    }
    Puis la classe de gestion des données:
    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
    public class CTableDonnees extends AbstractTableModel
    {
      // La liste des lignes de données:
      private final List<CLigneOperation> m_Operations = new ArrayList<CLigneOperation>();
     
    /.../
     
      public CTableDonnees()
      {
        super();
     
      }
     
    /.../
     
      @Override
      public int getColumnCount()
      {
        return /.../
      }
     
      @Override
      public int getRowCount()
      {
        return /.../
      }
     
      @Override
      public Object getValueAt(int ligne, int colonne)
      {
        return /.../
      }
     
      @Override
      public void setValueAt(Object aValue, int rowIndex, int columnIndex)
      {
        /.../
      }
    }
    J'ai bien évidemment rajouté aussi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public boolean IsCellEditable(int rowIndex, int columnIndex)
    {
      return true;
    }
    Ce qui m'inquiète est que lorsque je clique sur une case de la table, je constate que le programme ne passe pas dans la méthode IsCellEditable().
    Et un petit détail qui me chagrine: je me suis appuyé sur le tutoriel de Baptiste WICHT, dans lequel, cette méthode est marqué Override. Or en ce qui me concerne, mon éditeur n'est pas d'accord et m'informe que "La méthode IsCellEditable(int, int) de type CTableDonnees doit remplacer ou implémenter une méthode de super type". Il me propose d'ôter l'instruction Override.

    Qu'en pensez-vous ?

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Je pense que le nom de la méthode est faux:
    Ce n'est pas IsCellEditable() mais plutôt isCellEditable().

  3. #3
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Citation Envoyé par fr1man Voir le message
    Je pense que le nom de la méthode est faux:
    Ce n'est pas IsCellEditable() mais plutôt isCellEditable().
    Exact. J'ajouterai juste que l'instruction Override est là pour empêcher ce genre d'erreur. D'ailleurs, ton IDE ne s'est pas trompé : il a généré une erreur puisque tu ne peux pas surcharger une méthode qui n'existe pas dans la classe mère.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  4. #4
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par défaut
    Alors là, chapeau bas !!

    ça faisait 4 jours que je pataugeais avec ça !

    Effectivement, maintenant, l'éditeur est tout à fait d'accord à ce que la méthode soit Override. Voila une sécurité dont je me souviendrai...

    Merci beaucoup à vous 2

    @ bientôt

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

Discussions similaires

  1. Impossible de modifier les données de ma base
    Par ShortcutZ dans le forum Access
    Réponses: 1
    Dernier message: 23/08/2007, 22h16
  2. Impossible de modifier les attributs de dossiers
    Par junio dans le forum Windows XP
    Réponses: 2
    Dernier message: 14/02/2007, 09h26
  3. Réponses: 1
    Dernier message: 30/10/2006, 14h29
  4. Réponses: 2
    Dernier message: 05/10/2005, 15h27
  5. Réponses: 11
    Dernier message: 30/08/2005, 09h31

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