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 :

Récupérer le mouse event du header (jTable)


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 156
    Par défaut Récupérer le mouse event du header (jTable)
    Bonjour à tous,

    Je dois exporter des rapports en fonction du classement des colonnes d'un jTable (avec le setAutoCreateRowSorter).
    En gros, le classement en fonction d'une colonne doit permettre de changer une variable. Le "header" de la colonne serait en fait comme une série de boutons qui à travers d'évènements modifierait une variable.
    Comment je peux accéder aux événements du header?

    merci d'avance,

    Nicolas

    "Le timide a peur avant le danger,
    le lâche au milieu le danger,
    le courageux après le danger."
    JP Richter

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Au lieu de passer par un truc plutôt moyen en te basant sur le TableHeader, pourquoi ne pas simplement récupérer l'ordre de tri dans le RowSorter de ja JTable?

    Tu récupères le RowSorter de la JTable via getRowSorter, puis la liste des SortKeys (il y en a une par colonne) et pour chaque SortKey tu peux récupérer le SortOrder.

    Pour moi c'est largement plus propre qu'une bidouille à base de variable temporaire et de MouseListener sur lle JTableHeader.

    Tu peux même récupérer l'Event correspondant au changement de tri au moment où il s'effectue un ajoutant un RowSorterListener à ton RowSorter.

  3. #3
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 156
    Par défaut
    Merci Sinok,

    pour info, voici le détail d'une méthode permettant de récupérer le No de la colonne classée:

    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
     
    jTable1.setAutoCreateRowSorter(true);
     
    final RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(jTable1.getModel());
    jTable1.setRowSorter(sorter);                                         // Gives the Table a Row Sorter
     
                    sorter.addRowSorterListener(new RowSorterListener() {                // This is a action listener for when the user presses on sort
     
                            public void sorterChanged(RowSorterEvent e){                // Produces the event when something is heard
     
     
                                System.out.println("Column No= " + sorter.getSortKeys().get(0).getColumn()); // This is the method that is called when an action occurs
     
                            }
                    });

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

Discussions similaires

  1. coord mouse sans mouse event
    Par Zwiter dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 27/06/2008, 16h30
  2. Déclencher un mouse event
    Par FreshVic dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 17/04/2008, 11h23
  3. Des Mouse event (clic) oubliés dans mon JPanel
    Par nouknouk dans le forum AWT/Swing
    Réponses: 12
    Dernier message: 04/04/2007, 16h26
  4. Mouse Event sur un treeItem
    Par lanyl dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 26/11/2006, 08h29
  5. Bouton inactif et mouse event
    Par poulette dans le forum MFC
    Réponses: 2
    Dernier message: 03/02/2005, 14h18

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