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] savoir si une cellule est selectionnée


Sujet :

Composants Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 72
    Points : 41
    Points
    41
    Par défaut [JTable] savoir si une cellule est selectionnée
    bonjour

    je voudrais savoir si une cellule est selectionné dans une JTable. Exemple :



    C'est la cellule (0;0) qui est selectionné...

    J'ai testé avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    for(int c=0; c<jtable.getColumnCount();c++){
        		for(int r=0; r<jtable.getRowCount();r++){
        			if(jtable.isCellSelected(r,c)){
        				System.out.println("R:"+r+" C:"+c);
        				return true;
        			}
        		}
        	}
    mais ça ne marche pas !


    Comment faire ?


    merci à vous ...


    lipao

  2. #2
    Membre expérimenté Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Points : 1 608
    Points
    1 608
    Par défaut
    curieux, c'est pourtant la bonne méthode. A quel moment ton code est-il exécuté ?

  3. #3
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Mon code est executé quand on clique sur un bouton.

    La situation de ma JTable est celle présenté sur l'image

    je comprends pas pourquoi ça ne marche pas !

  4. #4
    Membre régulier Avatar de jiraiya
    Inscrit en
    Mai 2002
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 100
    Points : 116
    Points
    116
    Par défaut
    essaye avec getSelectedColumn et getSelectedRow si différents de -1 alors une cellule est sélectionnée

  5. #5
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Non j'ai testé et ça ne marche pas . Surement parce que là il n'y a qu'une cellule de selectionnée et pas une ligne ou une colonne !



  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    essaie plutôt d'ajouter un ListSelectionListener au model de ta table.

    // récupèration du modèle de la table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListSelectionModel lsm = table.getSelectionModel();
    // JTableListSelectionListener est une classe qui implémente ListSelectionListener
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tableListSelectionListener = new JTableListSelectionListener(lsm);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lsm.addListSelectionListener(tableListSelectionListener);
    et puis dans la méthode "valueChanged" de JTableListSelectionListener, tu fait toutes les manip que tu veux.

  7. #7
    Membre régulier Avatar de jiraiya
    Inscrit en
    Mai 2002
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 100
    Points : 116
    Points
    116
    Par défaut
    ça devrait marcher, même ta fonction d'avant devrait, et tu sûr de la tester sur la bonne JTable, il doit surement y avoir une erreur toute bête. vérifie que tu appelles bien ta fonction après avoir sélectionné une classe.

  8. #8
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    mardona : JTableListSelectionListener je dois le créer ???

    jiraiya : oui oui c'est bien la bonne fonction appelée au bon moment

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    JTableListeSelectionListener est une classe que tu doit créer, elle implémente simplement javax.swing.event.ListeSelectionListener, cette interface contient une seule méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /** 
       * Called whenever the value of the selection changes.
       * @param e the event that characterizes the change.
       */
      void valueChanged(ListSelectionEvent e);
    [/code]

  10. #10
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    avec du retard merci ça marche !

  11. #11
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut question
    j'ai ce meme probleme et je suis debutant en java veuillez expliquer comment l'avez vous fait marcher avec les listselectionlistener

    c un peu urgent
    merci d'avance

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

Discussions similaires

  1. [XL-2013] Comment savoir si une cellule est fusionnée
    Par DenisHen dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/06/2015, 10h47
  2. [XL-2007] Savoir si une cellule est une formule ou une valeur
    Par Syvolc dans le forum Excel
    Réponses: 3
    Dernier message: 23/06/2014, 14h50
  3. [XL-2010] Dans un TCD, savoir si une cellule est une donnée ou un sous-total
    Par Pierre Dumas dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 05/09/2012, 11h34
  4. [XL-2007] Savoir si une cellule est en train d'être modifiée
    Par ghosty04 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/03/2010, 18h25
  5. [VBA-E] Savoir si une cellule est contenue dans une plage
    Par psych0o0 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/05/2006, 14h12

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