Remplir une JTable avec un vecteur

Signaler
Messages postés
2
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
7 mars 2009
-
Messages postés
2
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
7 mars 2009
-
Salut. Je suis a mes debt dans JAVA. Jaimerais replir une JTable avec un vecteur mais j'y arrive pas. Quelqu'un m'aider.

Merci d'avance

3 réponses

Messages postés
110
Date d'inscription
mercredi 28 mars 2007
Statut
Membre
Dernière intervention
28 août 2012
1
Salut,

Voici un exemple de tuto fourni par Java.
Une ligne de JTable correspond à un vecteur ; chaque cellule est un élément de ce vecteur.
L'ensemble des lignes doit être stocké dans un vecteur global qui est passé en paramètre au constructeur de la JTable.
Même chose pour les noms colonnes, un nom de colonne est égal à un élément d'un vecteur de noms de colonnes passé en paramètre au constructeur.

Tu feras le test par toi même en modifiat le code : si tu enlèves la JScrollPane associée à la JTable, les noms de colonne disparaissent.

A +,

amundain

import java.awt.BorderLayout;
import java.util.Vector;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;

public class JTableCreatingByVector {
  public static void main(String args[]) {
    JFrame frame =   new  JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    Vector<String> rowOne  = new Vector<String>();
    rowOne.addElement("Row1-Column1");
    rowOne.addElement("Row1-Column2");
    rowOne.addElement("Row1-Column3");
    
    Vector<String> rowTwo =   new  Vector<String>();
    rowTwo.addElement("Row2-Column1");
    rowTwo.addElement("Row2-Column2");
    rowTwo.addElement("Row2-Column3");
    
    Vector<Vector> rowData  = new Vector<Vector>();
    rowData.addElement(rowOne);
    rowData.addElement(rowTwo);
    
    Vector<String> columnNames =   new  Vector<String>();
    columnNames.addElement("Column One");
    columnNames.addElement("Column Two");
    columnNames.addElement("Column Three");
    JTable table  = new JTable(rowData, columnNames);

    JScrollPane scrollPane =   new  JScrollPane(table);
    frame.add(scrollPane, BorderLayout.CENTER);
    frame.setSize(300, 150);
    frame.setVisible(true);

  }
}


<hr width ="100%" size="2" />Java bien,merci.
Messages postés
110
Date d'inscription
mercredi 28 mars 2007
Statut
Membre
Dernière intervention
28 août 2012
1
Houlà, problème de recopie !

import java.awt.BorderLayout;
import java.util.Vector;


import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTable;


public class JTableCreatingByVector {

  public static void main(String args[]) {

    JFrame frame = new JFrame();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


    Vector<String> rowOne = new Vector<String>();

    rowOne.addElement("Row1-Column1");

    rowOne.addElement("Row1-Column2");

    rowOne.addElement("Row1-Column3");

    

    Vector<String> rowTwo = new Vector<String>();

    rowTwo.addElement("Row2-Column1");

    rowTwo.addElement("Row2-Column2");

    rowTwo.addElement("Row2-Column3");

    

    Vector<Vector> rowData = new Vector<Vector>();

    rowData.addElement(rowOne);

    rowData.addElement(rowTwo);

    

    Vector<String> columnNames = new Vector<String>();

    columnNames.addElement("Column One");

    columnNames.addElement("Column Two");

    columnNames.addElement("Column Three");

    JTable table = new JTable(rowData, columnNames);


    JScrollPane scrollPane = new JScrollPane(table);

    frame.add(scrollPane, BorderLayout.CENTER);

    frame.setSize(300, 150);

    frame.setVisible(true);


  }

}


<hr width="100%" size="2" />Java bien,merci.
Messages postés
2
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
7 mars 2009

Slt Amundain. Merci pour ta reponse. Je vais l'utiliser et te donner la suite plu tard.

Regards.....