Partage
  • Partager sur Facebook
  • Partager sur Twitter

Souci avec JTable

Comment rendre les cellules non éditable dans mon cas

    17 octobre 2011 à 12:35:18

    Bonjour à tous, voici, depuis un moment je butte contre un problème que je n’arrive pas à resoudre, celui de rendre les cellules de ma Jtable non éditables.je sais que la méthode « isCellEditable(int row, int col) » le fait, mais dans mon cas je ne sais pas ou appelé cette méthode, vu que ma Jtable est composée d’une colonne et est remplie par une requête.Quelqu’un pourait-il m’éclairer sur le topo ?Merci.
    Les codes :

    /*Methode permettant de remplir la Jtable*/
    
    public void  ListeRegistre()
         {
            try{
                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);
                         //objects[i]=isCellEditable(i, colNo);
                    }
                   // TxtJtable.getModel().;
                    aModel.addRow(objects);
                }
                TxtJtable.setModel(aModel);
                TxtJtable.repaint();
              
               } catch (SQLException ex) {
                Logger.getLogger(FormProcedureGestionRegistre1.class.getName()).log(Level.SEVERE, null, ex);
            }
    
    /*Code de ma JTable*/
    
    private DefaultTableModel aModel;
    private javax.swing.JTable TxtJtable;
    TxtJtable = new javax.swing.JTable();
    String[] tableColumnsName = {"REGISTRE DISPONIBLES"};
                aModel = new DefaultTableModel();
                aModel.setColumnIdentifiers(tableColumnsName);
    TxtJtable.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
    
    TxtJtable.setModel(aModel );
    
    TxtJtable.setEnabled(false);
    
    • Partager sur Facebook
    • Partager sur Twitter
      17 octobre 2011 à 13:50:34

      Regarde du côté des JTableModel.
      Il y a des discussions sur le sujet, comme ici : StackOverflow
      • Partager sur Facebook
      • Partager sur Twitter

      Souci avec JTable

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown