Comment pouvoir interdire des doublons dans les lignes de ma Jtable

Résolu
coolanso Messages postés 75 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 5 juillet 2014 - 2 nov. 2011 à 14:16
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 - 11 nov. 2011 à 14:55
Bonjour à tous, dans mon application je dispose de deux (2) JTables A et B, l'idée est de pouvoir, en cliquant sur le bouton ajouter, copier la donnée de la ligne sélectionnée de A dans B, ce que je suis parvenu à faire sans problème, mais le hic est que la donnée copiée se place sur la première ligne de B, je voudrais qu'elle se place sur la dernière ligne, je veux dire après le dernier enregistrement de la JTable B. Aussi je voudrais pouvoir interdire d'avoir des doublons dans la table B,mes tentatives se sont chaque fois soldées par des échecs, quelqu'un pourrait-il m?aider ?

codes :

private javax.swing.JTable txtJtableRegDispo; 
private javax.swing.JTable txtJtableRegCharger;
private DefaultTableModel aModel,bModel;

//Méthodes de vérification de doublon
public boolean verif(Object[] val){
    boolean result=true;
    for(int k=0;k< txtJtableRegCharger.getModel().getRowCount();k++){
          if(txtJtableRegCharger.getModel().getValueAt(k, 0) == val){
              JOptionPane.showMessageDialog(null, val+" existe déjà", "Erreur", JOptionPane.ERROR_MESSAGE);
              result=false;
          }
        }
     return result;
}

private void CmdAjouterActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
// txtJtableRegDispo;  Registre (A);  txtJtableRegCharger  Registre (B)
       int i=txtJtableRegDispo.getSelectedRow();      
      int j=0;/* a ce niveau j'ai beau essayer de recuperer le nbr de ligne pour incrementé sans succès */
      Object [] valeur = {txtJtableRegDispo.getValueAt(i, 0)}; 
       bModel.insertRow(j,valeur); 
if(verif(valeur)==true ) 
        bModel.insertRow(j,valeur);   
j++ ;   
    }      

24 réponses

cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
9 nov. 2011 à 21:02
Pfff...
CE n est pas ds le constructeur qu il faut faire le trie ... Et c est bien une surcharge de la classs default que je te propose ;o) ... perso chaqu une de mes JTable utilise un model perso ;o) et un renderer perso aussi ;o) (pas toujour un editor) ;o) ... C est dans la methode ADDOW que tu doit faire ton conrole ;o)...
et apres sa fille tout seul ;o) ...

AU PLUS pire ;o)si envoi ton code ... godconan@tousr.fr ;o) mais je garanti rien ;o) chui en vacance ;o) et pas toujours dispo ... De plus chui hyper exigent sur le respect des conventions d ecriture ;o) ...

GodConan ;o)
0
coolanso Messages postés 75 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 5 juillet 2014
9 nov. 2011 à 21:23
ok GodConan,voici, l'integralité de mon code :

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * FormChoixRegistre.java
 *
 * Created on 27 juin 2011, 10:34:03
 */
package com.anso.dpicol.vue;

import com.anso.dpicol.dao.DataBaseConnector;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.ResultSetMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Map;
import java.util.TreeMap;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author Cool
 */
public final class FormChoixRegistre1 extends javax.swing.JFrame {

    private ArrayList listDesRegistres;
    private String ValTxtCodeRegistre;
    private int colNo;
    private Object objects[];
    

    /** Creates new form FormChoixRegistre */
    public FormChoixRegistre1() {
        initComponents();
        setResizable(false);
        setLocationRelativeTo(null);
        listeRegistre();

    }
    
public boolean verif(Object[] val){
    boolean result=true;
    for(int k=0;k< txtJtableRegCharger.getModel().getRowCount();k++){
          if(txtJtableRegCharger.getModel().getValueAt(k, 0) == val){
              JOptionPane.showMessageDialog(null, val+" existe déjà", "Erreur", JOptionPane.ERROR_MESSAGE);
              result=false;
          }
        }
    
     return result;
}
    public void listeRegistre() {
        try {
//            String Query = "SELECT * FROM registres ";
            String Query = "SELECT * FROM registres ";
            Connection connection = (Connection) DataBaseConnector.getConnection();
            PreparedStatement ps = (PreparedStatement) connection.prepareStatement(Query);
            ResultSet rs = ps.executeQuery();
            ResultSetMetaData md = (ResultSetMetaData) rs.getMetaData();
            colNo = md.getColumnCount();
            while (rs.next()) {
                objects = new Object[colNo];
                for (int i = 0; i < colNo; i++) {
                    objects[i] = rs.getObject(i+1);     
                }
                aModel.addRow(objects);
            }
            txtJtableRegDispo.repaint();

        } catch (SQLException ex) {
            Logger.getLogger(FormChoixRegistre1.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        PanContenu = new javax.swing.JPanel();
        PanEntete = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        PanCentral = new javax.swing.JPanel();
        PanRegistreTotal = new javax.swing.JPanel();
        jLabel2 = new javax.swing.JLabel();
        TxtNbRegistreDispo = new javax.swing.JTextField();
        jScrollPane1 = new javax.swing.JScrollPane();
        listDesRegistres=new ArrayList();
        txtJtableRegDispo = new javax.swing.JTable();
        PanCmd = new javax.swing.JPanel();
        CmdAjouter = new javax.swing.JButton();
        CmdRetirer = new javax.swing.JButton();
        CmdQuitter = new javax.swing.JButton();
        PanRegistreSelectionne = new javax.swing.JPanel();
        jLabel3 = new javax.swing.JLabel();
        jTextField2 = new javax.swing.JTextField();
        jScrollPane2 = new javax.swing.JScrollPane();
        listeDesRegCharger=new ArrayList();
        txtJtableRegCharger = new javax.swing.JTable();

        setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
        setTitle("Etat Civil");

        PanContenu.setBackground(new java.awt.Color(102, 102, 102));
        PanContenu.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        PanContenu.setLayout(new java.awt.BorderLayout());

        PanEntete.setBackground(new java.awt.Color(0, 0, 0));
        PanEntete.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
        PanEntete.setForeground(new java.awt.Color(255, 153, 0));

        jLabel1.setFont(new java.awt.Font("Perpetua", 3, 24));
        jLabel1.setForeground(new java.awt.Color(255, 153, 0));
        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText("REGISTRES D'ACTES DE NAISSANCE A CHARGER");

        javax.swing.GroupLayout PanEnteteLayout = new javax.swing.GroupLayout(PanEntete);
        PanEntete.setLayout(PanEnteteLayout);
        PanEnteteLayout.setHorizontalGroup(
            PanEnteteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 737, Short.MAX_VALUE)
        );
        PanEnteteLayout.setVerticalGroup(
            PanEnteteLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 39, Short.MAX_VALUE)
        );

        PanContenu.add(PanEntete, java.awt.BorderLayout.NORTH);

        PanCentral.setLayout(new java.awt.BorderLayout());

        PanRegistreTotal.setBackground(new java.awt.Color(102, 102, 102));
        PanRegistreTotal.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED), "Tous Les Registres", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Perpetua", 3, 18), new java.awt.Color(0, 0, 204))); // NOI18N

        jLabel2.setFont(new java.awt.Font("Perpetua", 3, 18));
        jLabel2.setForeground(new java.awt.Color(0, 204, 0));
        jLabel2.setText("Nombre De Registres :");

        TxtNbRegistreDispo.setBackground(new java.awt.Color(255, 153, 153));
        TxtNbRegistreDispo.setFont(new java.awt.Font("Perpetua", 3, 18));
        TxtNbRegistreDispo.setForeground(new java.awt.Color(255, 153, 0));
        TxtNbRegistreDispo.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        TxtNbRegistreDispo.setBorder(null);
        TxtNbRegistreDispo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                TxtNbRegistreDispoActionPerformed(evt);
            }
        });

        String[] tableColumnsName = {"Liste des registres disponibles"};
        aModel = new DefaultTableModel()
        {
            public boolean isCellEditable(int row, int col)
            {
                return false;
            }
        };
        txtJtableRegDispo.getSelectionModel().addListSelectionListener(new RowListener());
        aModel.setColumnIdentifiers(tableColumnsName);
        txtJtableRegDispo.setModel(aModel);
        txtJtableRegDispo.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                txtJtableRegDispoMouseClicked(evt);
            }
        });
        txtJtableRegDispo.addInputMethodListener(new java.awt.event.InputMethodListener() {
            public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
            }
            public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
                txtJtableRegDispoCaretPositionChanged(evt);
            }
        });
        jScrollPane1.setViewportView(txtJtableRegDispo);

        javax.swing.GroupLayout PanRegistreTotalLayout = new javax.swing.GroupLayout(PanRegistreTotal);
        PanRegistreTotal.setLayout(PanRegistreTotalLayout);
        PanRegistreTotalLayout.setHorizontalGroup(
            PanRegistreTotalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, PanRegistreTotalLayout.createSequentialGroup()
                .addComponent(jLabel2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(TxtNbRegistreDispo, javax.swing.GroupLayout.DEFAULT_SIZE, 145, Short.MAX_VALUE))
            .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 306, Short.MAX_VALUE)
        );
        PanRegistreTotalLayout.setVerticalGroup(
            PanRegistreTotalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, PanRegistreTotalLayout.createSequentialGroup()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 109, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 30, Short.MAX_VALUE)
                .addGroup(PanRegistreTotalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(TxtNbRegistreDispo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
        );

        PanCentral.add(PanRegistreTotal, java.awt.BorderLayout.WEST);

        PanCmd.setBackground(new java.awt.Color(102, 102, 102));
        PanCmd.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));

        CmdAjouter.setFont(new java.awt.Font("Perpetua", 3, 18)); // NOI18N
        CmdAjouter.setText("  Ajouter  ");
        CmdAjouter.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
        CmdAjouter.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CmdAjouterActionPerformed(evt);
            }
        });

        CmdRetirer.setFont(new java.awt.Font("Perpetua", 3, 18));
        CmdRetirer.setText("  Retirer  ");
        CmdRetirer.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
        CmdRetirer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CmdRetirerActionPerformed(evt);
            }
        });

        CmdQuitter.setFont(new java.awt.Font("Perpetua", 3, 18));
        CmdQuitter.setText("  Quitter  ");
        CmdQuitter.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
        CmdQuitter.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CmdQuitterActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout PanCmdLayout = new javax.swing.GroupLayout(PanCmd);
        PanCmd.setLayout(PanCmdLayout);
        PanCmdLayout.setHorizontalGroup(
            PanCmdLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(CmdAjouter, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE)
            .addComponent(CmdRetirer, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE)
            .addComponent(CmdQuitter, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE)
        );
        PanCmdLayout.setVerticalGroup(
            PanCmdLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(PanCmdLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(CmdAjouter)
                .addGap(18, 18, 18)
                .addComponent(CmdRetirer)
                .addGap(43, 43, 43)
                .addComponent(CmdQuitter)
                .addContainerGap(32, Short.MAX_VALUE))
        );

        PanCentral.add(PanCmd, java.awt.BorderLayout.CENTER);

        PanRegistreSelectionne.setBackground(new java.awt.Color(102, 102, 102));
        PanRegistreSelectionne.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED), "Registres Sélectionnés", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Perpetua", 3, 18), new java.awt.Color(0, 0, 204))); // NOI18N

        jLabel3.setFont(new java.awt.Font("Perpetua", 3, 18));
        jLabel3.setForeground(new java.awt.Color(255, 0, 0));
        jLabel3.setText("Nombres De registres :");

        jTextField2.setBackground(new java.awt.Color(0, 0, 0));
        jTextField2.setFont(new java.awt.Font("Perpetua", 3, 18));
        jTextField2.setForeground(new java.awt.Color(255, 102, 0));
        jTextField2.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        jTextField2.setBorder(null);

        String[] tableColumnsName1 = {"Liste des registres àcharger"};
        bModel = new DefaultTableModel()
        {
            public boolean isCellEditable(int row, int col)
            {
                return false;
            }
        };
        txtJtableRegCharger.getSelectionModel().addListSelectionListener(new RowListener1());
        bModel.setColumnIdentifiers(tableColumnsName1);
        txtJtableRegCharger.setModel(bModel);
        txtJtableRegCharger.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                txtJtableRegChargerMouseClicked(evt);
            }
        });
        txtJtableRegCharger.addInputMethodListener(new java.awt.event.InputMethodListener() {
            public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
            }
            public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
                txtJtableRegChargerCaretPositionChanged(evt);
            }
        });
        jScrollPane2.setViewportView(txtJtableRegCharger);

        javax.swing.GroupLayout PanRegistreSelectionneLayout = new javax.swing.GroupLayout(PanRegistreSelectionne);
        PanRegistreSelectionne.setLayout(PanRegistreSelectionneLayout);
        PanRegistreSelectionneLayout.setHorizontalGroup(
            PanRegistreSelectionneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE)
            .addGroup(PanRegistreSelectionneLayout.createSequentialGroup()
                .addComponent(jLabel3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 147, Short.MAX_VALUE))
        );
        PanRegistreSelectionneLayout.setVerticalGroup(
            PanRegistreSelectionneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(PanRegistreSelectionneLayout.createSequentialGroup()
                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 27, Short.MAX_VALUE)
                .addGroup(PanRegistreSelectionneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
        );

        PanCentral.add(PanRegistreSelectionne, java.awt.BorderLayout.EAST);

        PanContenu.add(PanCentral, java.awt.BorderLayout.CENTER);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(PanContenu, javax.swing.GroupLayout.DEFAULT_SIZE, 745, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(PanContenu, javax.swing.GroupLayout.PREFERRED_SIZE, 236, javax.swing.GroupLayout.PREFERRED_SIZE)
        );

        pack();
    }// </editor-fold>

    private void CmdRetirerActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
       
        int a=txtJtableRegCharger.getSelectedRow();
        int[] selection = txtJtableRegCharger.getSelectedRows();
               for(int i = selection.length - 1; i >= 0; i--){
                 bModel.removeRow(selection[i]);
}


    }                                          

    private void CmdQuitterActionPerformed(java.awt.event.ActionEvent evt) {                                           
        final int[] rep = new int[1];
        rep[0] = JOptionPane.showConfirmDialog(null, "Voulez-vous vraiment quitter cette fenêtre?", "Quitter", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
        if (rep[0] == JOptionPane.YES_OPTION) //System.exit(6);
        {
            this.setVisible(false);
        }

    }                                          

    private void txtJtableRegDispoMouseClicked(java.awt.event.MouseEvent evt) {                                               
          }                                              

    private void CmdAjouterActionPerformed(java.awt.event.ActionEvent evt) {                                           

        
       int i=txtJtableRegDispo.getSelectedRow();
       int c;
       Object [] valeur = {txtJtableRegDispo.getValueAt(i, 0)}; 
       txtJtableRegDispo.clearSelection();
       

           bModel.addRow(valeur);
      
              
    }                                          

    private void txtJtableRegChargerMouseClicked(java.awt.event.MouseEvent evt) {                                                 
        // TODO add your handling code here:
        
    }                                                

    private void txtJtableRegChargerCaretPositionChanged(java.awt.event.InputMethodEvent evt) {                                                         
        // TODO add your handling code here:
    }                                                        

    private void TxtNbRegistreDispoActionPerformed(java.awt.event.ActionEvent evt) {                                                   
        // TODO add your handling code here:
        String valNbRegDipo= Integer.toString( txtJtableRegDispo.getRowCount());
        TxtNbRegistreDispo.setText(Integer.toString( txtJtableRegDispo.getRowCount()));
        for(int p=0;p<txtJtableRegDispo.getRowCount();p++){
            if(p==txtJtableRegDispo.getSelectedRow())
                System.out.println(valNbRegDipo);
        }
        
    }                                                  

    private void txtJtableRegDispoCaretPositionChanged(java.awt.event.InputMethodEvent evt) {                                                       
        // TODO add your handling code here:
    }                                                      

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new FormChoixRegistre1().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton CmdAjouter;
    private javax.swing.JButton CmdQuitter;
    private javax.swing.JButton CmdRetirer;
    private javax.swing.JPanel PanCentral;
    private javax.swing.JPanel PanCmd;
    private javax.swing.JPanel PanContenu;
    private javax.swing.JPanel PanEntete;
    private javax.swing.JPanel PanRegistreSelectionne;
    private javax.swing.JPanel PanRegistreTotal;
    private javax.swing.JTextField TxtNbRegistreDispo;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTable txtJtableRegCharger;
    private ArrayList listeDesRegCharger;
    private javax.swing.JTable txtJtableRegDispo;
    private DefaultTableModel aModel,bModel;
    // End of variables declaration

    
    private class RowListener implements ListSelectionListener {

    @Override
    public void valueChanged(ListSelectionEvent event) {
        // if (!"Enregistrer le registre".equals(CmdNouveauRegistre.getText().trim())) { 
        for (int i = 0; i < txtJtableRegDispo.getRowCount(); i++) {
            if (txtJtableRegDispo.getSelectedRow() == i) {
                CmdAjouter.setEnabled(true);
                CmdRetirer.setEnabled(false);
                txtJtableRegCharger.clearSelection();
            }
        }
    }
}
    
     private class RowListener1 implements ListSelectionListener {

    @Override
    public void valueChanged(ListSelectionEvent event) {
         for (int k = 0; k < txtJtableRegCharger.getRowCount(); k++) {
            if (txtJtableRegCharger.getSelectedRow() == k) {
                CmdAjouter.setEnabled(false);
                CmdRetirer.setEnabled(true);
                txtJtableRegDispo.clearSelection();
            }
        }
    }
     }
     
     
public Object getValeur() {
        Object val = "";
        for (int i = 0; i < txtJtableRegDispo.getRowCount(); i++) {
            if (txtJtableRegDispo.getSelectedRow() == i) {
                val = txtJtableRegDispo.getModel().getValueAt(i, 0);
            }
        }
        return val;
    }
     
      public int getRowCount() {
        return this.txtJtableRegCharger.getModel().getRowCount();
    }
      
            
   
      
}
0
coolanso Messages postés 75 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 5 juillet 2014
11 nov. 2011 à 12:03
Grand Merci à toi,GodConan,tu m'as réellement tiré une épine du pied.t'es un as de java.
0
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
11 nov. 2011 à 14:55
De rien ;o) ... Quand on peut aider, ça fait plaisir... ;o) pour les autres tu peux peu etre préciser comment tu t en ais sortie?! ;o)


GodConan ;o)
0
Rejoignez-nous