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] Multi selection sur jtable


Sujet :

Composants Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 48
    Points
    48
    Par défaut [jTable] Multi selection sur jtable
    Bonjour,
    Je cherche à bloquer ma multi sélection sur ma jtable avec la souris.
    En faite avec la souris je veux empécher la multi sélection et la permettre dans les autres cas.
    Merci

  2. #2
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 137
    Points : 148
    Points
    148
    Par défaut
    il va falloir que tu joue avec le setSelectionMode();

    un peu du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    resultsTable.setSelectionMode(
    				       ListSelectionModel.SINGLE_SELECTION);

  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 48
    Points
    48
    Par défaut
    oui ok mais comme savoir à la fois qu'il est pressed et qu'il bouge?

  4. #4
    Membre averti Avatar de biozaxx
    Profil pro
    Inscrit en
    Août 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 403
    Points : 375
    Points
    375
    Par défaut
    je crois que je vois ce que tu veux dire :

    tu as un list en mode SINGLE_SELECTION

    tu selectionnes une ligne et si tu ne relache pas le clic gauche (pour enchainer sur un dnd vers le bas par exemple) ta selection ne reste pas sur la premiere ligne selectionnée mais selectionne a chaque fois la nouvelle ligne sous le curseur ? c'est ca

    si c'est la cas j'ai la meme question : comment empecher un defilement automatique de la liste et la selection de la ligne sous le curseur quand on est en mode SINGLE_SELECTION

  5. #5
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 137
    Points : 148
    Points
    148
    Par défaut
    Excusez moi mais je ne comprends pas trop ton besoin !!

    Pourrais tu être plus explicite ??
    Dans tous pour que tu t'en sorte il va falloir que tu étendes la classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DefaultListSelectionModel
    qui gére la sélection de tes cellules

  6. #6
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 137
    Points : 148
    Points
    148
    Par défaut
    et pour être plus précis ..

    Il faudra que surcharge la méthode suivante :

    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
     
     public void setLeadSelectionIndex(int leadIndex) { 
            int anchorIndex = this.anchorIndex;
     
    	if ((anchorIndex == -1) || (leadIndex == -1)) { 
    	    return; 
    	}
     
    	if (this.leadIndex == -1) { 
    	    this.leadIndex = leadIndex; 
    	}
     
    	boolean shouldSelect = value.get(this.anchorIndex); 
     
            if (getSelectionMode() == SINGLE_SELECTION) { 
                anchorIndex = leadIndex;
                shouldSelect = true; 
            }
     
            int oldMin = Math.min(this.anchorIndex, this.leadIndex);
            int oldMax = Math.max(this.anchorIndex, this.leadIndex);
    	int newMin = Math.min(anchorIndex, leadIndex);
    	int newMax = Math.max(anchorIndex, leadIndex);
     
    	updateLeadAnchorIndices(anchorIndex, leadIndex); 
     
            if (shouldSelect) {
                changeSelection(oldMin, oldMax, newMin, newMax);
            }
            else {
                changeSelection(newMin, newMax, oldMin, oldMax, false);
            }
        }

Discussions similaires

  1. Requete select sur un JTable
    Par asoka13 dans le forum Composants
    Réponses: 3
    Dernier message: 29/09/2010, 16h53
  2. Listener sur JTable
    Par calypso dans le forum Composants
    Réponses: 3
    Dernier message: 05/02/2009, 16h27
  3. Multi Select sur Multi Lists
    Par Sergejack dans le forum Flex
    Réponses: 4
    Dernier message: 22/04/2008, 11h15
  4. [JTable] Raccourci clavier sur une Table
    Par sylvain_2020 dans le forum Composants
    Réponses: 5
    Dernier message: 05/07/2007, 09h01
  5. multi selection sur un combobox
    Par amelA dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 14/05/2007, 18h14

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