[Java] Données des valeurs des cellules d'une

Bonjour ,
Je vous explique mon problème

- Dans mon onglet "Historique", j'ai un tableau avec 3 colonnes.
- J'arrive à afficher la valeur de la cellule que je selectionne avec la souris grace à :

int ligne = table.getSelectedRow();
int colonne = table.getSelectedColumn();
Object cellule = table.getValueAt(ligne, colonne);
System.out.println(ligne);


- Mais moi j'aimerai que quand je séléctionne n'importe quelle cellule de la ligne de mon tableau, cela m'affiche les valeurs des 3 cellules de la ligne séléctionnée grace à la souris.
(plus éxactement quand je séléctionne avec la souris la ligne, et que je clique sur le bouton "Information", cela m'affiche les valeurs des cellules de la lignes sous forme de 3 String (de manière à pouvoir les réutiliser tout le long du code, car j'en aurai besoin.))
Merci d'avance à ceux qui s'intéresseront à ce sujet.

SoGeek,

Bonne journée/soirée.

4 réponses

  1. Héhé,
    Mais comme j'ai que 3 colonnes, et que je connais le nombre de colonnesque j'ai, autant faire simple, mais si non ta méthode doit marcher ... comme toujours :D
    0
    1. Héhé je ne suis omniprésente :P

      Sinon ma méthode ne fonctionne pas? ^^

      Car son avantage c'est que si tu as plus de 3 colonnes ça te fournis tout de même toutes les colonnes de la ligne en question grâce à la boucle for et au table.getRowCount() (que tu dois en fait remplacer par getColumnCount() j'avais zappé désolée ^^).

      "The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- PDP8 handbook, Pg 9-64
      0
      1. Meme là tu viens me répondre :P
        Non en fait c'est tout simple :
         HC.addActionListener(new ActionListener(){ 
         public void actionPerformed(ActionEvent arg0) { 
              
        int ligne = table.getSelectedRow(); 
        Object cellule1 = table.getValueAt(ligne, 0); 
        Object cellule2 = table.getValueAt(ligne, 1); 
        Object cellule3 = table.getValueAt(ligne, 2); 
        System.out.println(cellule1 + " | " + cellule2 + " | " + cellule3); 
        


        :)
        0
        1. As-tu essayé comme ceci :

          int ligne = table.getSelectedRow();  // on s'en fou ^^
          int colonne = table.getSelectedColumn();
          
          String ligne = "";
          for(int i = 0; i < table.getRowCount(); i++)
          {
              Object cellule = table.getValueAt(i, colonne);
              ligne += cellule + "\t";
          }
          System.out.println(ligne);


          Si ça ne fonctionne pas avec cette boucle for change là comme suit :
          for(int i = 1; i <= table.getRowCount(); i++)


          Car je ne sais plus trop si les index des lignes comment à 0 ou a 1...

          Voilà donne nous des nouvelles.
          0