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 :

Problème TableSorter Jtable


Sujet :

Composants Java

  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut Problème TableSorter Jtable
    Bonjour,
    Alors j'ai lu avec attention les tutorials et fait des recherches dans ce forum mais je n'arrive toujours pas à comprendre comment trier mon tableau. Voici le code de mon main Panel :
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    	public MainPanel() {
     
            super("Search");
            this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            this.setLocation(300, 300);
            final JPanel mainFiller = new JPanel();
            mainFiller.setLayout(new BoxLayout(mainFiller, BoxLayout.PAGE_AXIS));
            final JPanel searchPanel = new JPanel(new FlowLayout());
     
            final JMenuBar barre = new JMenuBar() ;
            this.setJMenuBar(barre);
            final JMenu Menu = new JMenu("Menu");
            barre.add(Menu);
            final JMenuItem dictionnaire = new JMenuItem("Dictionary");
            Menu.add(dictionnaire);
            dictionnaire.addActionListener(new ActionListener(){
            	public void actionPerformed(final ActionEvent e){executerActionDico();}
            });   
            final JMenuItem pattern = new JMenuItem("Add Regular Expression");
            Menu.add(pattern);
            pattern.addActionListener(new ActionListener(){
            	public void actionPerformed(final ActionEvent e){executerActionPattern();}
            });
     
            Menu.addSeparator(); // on ajoute un séparateur entre ouvrir et quitter
            final JMenuItem quitter = new JMenuItem("Quit");
            Menu.add(quitter);
            quitter.addActionListener(new ActionListener(){
            	public void actionPerformed(final ActionEvent e){executerActionQuitter();}
            });
     
            fileName1 = new JTextField(30);
            fileName1.addKeyListener(this);
            fileName2 = new JTextField(30);
            fileName2.addKeyListener(this);
            generateButton = new JButton("Generate words");
            generateButton.addActionListener(new ActionListener(){
            	public void actionPerformed(final ActionEvent e){executerActionGenerate();}
            });
            searchPanel.add(new JLabel("Domain Collection: "));
            searchPanel.add(fileName1);
            searchPanel.add(new JLabel("Reference Collection: "));
            searchPanel.add(fileName2);
            searchPanel.add(generateButton);
           	resultList = new JTable();
           	resultList.setModel(new DefaultTableModel(new Object[0][0], columnNames));
            resultList.getColumnModel().getColumn(0).setPreferredWidth(70);
            resultList.getColumnModel().getColumn(1).setPreferredWidth(150);
            resultList.getColumnModel().getColumn(2).setPreferredWidth(60);
            resultList.getColumnModel().getColumn(3).setPreferredWidth(60);
            resultList.getColumnModel().getColumn(4).setPreferredWidth(150);
            resultList.getColumnModel().getColumn(5).setPreferredWidth(150);
            mainFiller.add(searchPanel);
            final JPanel resultPanel = new JPanel(new BorderLayout());
            final JScrollPane scroller = new JScrollPane(resultList);
            scroller.setBorder(BorderFactory.createEtchedBorder());
            resultPanel.add(scroller, BorderLayout.CENTER);
            mainFiller.add(resultPanel);       		
            this.getContentPane().add(mainFiller);
            this.pack();
            this.show();
        }
    J'ai intégré la classe MyTableModel pour pouvoir lancer ces lignes de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    TableSorter sorter = new TableSorter(new TableModel( ));
     
              JTable  tableau = new JTable(sorter);
     
            sorter.setTableHeader(tableau.getTableHeader());
    A l'étape initial mon tableau est vide puis lors de l'action sur le bouton generate, il se remplis, voici le code actuel de l'action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     protected void executerActionGenerate() {
    		final DefaultTableModel model = (DefaultTableModel)resultList.getModel();
    	    model.setNumRows(0);	    
    	    Process p = new Process(fileName1.getText(),fileName2.getText(), model);
    	}
    Le constructeur process remplit mon tableau.
    J'ai réussi à l'étape initial à observer un tri avec des données que j'avais mises dans le tableau mais comment faire pour la suite ? Je suis perdu..Aidez moi svp...

  2. #2
    Membre émérite
    Avatar de n!co
    Profil pro
    Inscrit en
    Février 2004
    Messages
    831
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 831

  3. #3
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 20
    Par défaut
    C'est parfait, vous avez juste à remplacer JTable par JXTable dans le mainpanel et tout est automatique. Merci beaucoup.

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

Discussions similaires

  1. Problème taille JTable
    Par L4BiN dans le forum Composants
    Réponses: 6
    Dernier message: 11/02/2011, 18h35
  2. Problème de JTable
    Par arsenik7 dans le forum Composants
    Réponses: 17
    Dernier message: 01/08/2006, 09h36
  3. Problème sur JTable
    Par arsenik7 dans le forum Composants
    Réponses: 4
    Dernier message: 03/07/2006, 16h42
  4. Problème avec Jtable
    Par @yoyo dans le forum Composants
    Réponses: 4
    Dernier message: 22/03/2006, 15h51
  5. problème avec Jtable
    Par magic001 dans le forum Composants
    Réponses: 6
    Dernier message: 15/03/2006, 23h49

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