Afficher JTable en JAVA
Résolu
brain2005
Messages postés
32
Statut
Membre
-
paul -
paul -
Bonjour,
je veux afficher les données d'un tableau dans un Jtable et chaque fois je clik sur un bouton le tableau va changer
// lign tableau contenant les données à afficher, ce tableau change lorsque je clik sans prob
String[][] lign = new String[][] {..........................................};
String[] cols = new String[] {"Min", "Max", "Avg" };
DefaultTableModel model = new DefaultTableModel( lign, cols);
table.setModel(model);
table = new JTable(lign, cols);
le prob c à l'affichage: tout d'abord tout marche bien et les données s'affichent mais lorsque je clik sur bouton la Jtable reste la même alors que le tableau lign a été changé
où le problème???? aidez moi svp et merci d'avance
je veux afficher les données d'un tableau dans un Jtable et chaque fois je clik sur un bouton le tableau va changer
// lign tableau contenant les données à afficher, ce tableau change lorsque je clik sans prob
String[][] lign = new String[][] {..........................................};
String[] cols = new String[] {"Min", "Max", "Avg" };
DefaultTableModel model = new DefaultTableModel( lign, cols);
table.setModel(model);
table = new JTable(lign, cols);
le prob c à l'affichage: tout d'abord tout marche bien et les données s'affichent mais lorsque je clik sur bouton la Jtable reste la même alors que le tableau lign a été changé
où le problème???? aidez moi svp et merci d'avance
A voir également:
- Afficher JTable en JAVA
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
2 réponses
Salut,
Pas très clair comme souci...
le prob c à l'affichage: tout d'abord tout marche bien et les données s'affichent mais lorsque je clik sur bouton la Jtable reste la même alors que le tableau lign a été changé <== absolument aucune idée concernant l'action à réaliser lorsque tu cliques sur ton bouton.
Concernant la création de la JTable: en reprenant ton code ci-dessus, essaie ceci:
++
Pas très clair comme souci...
le prob c à l'affichage: tout d'abord tout marche bien et les données s'affichent mais lorsque je clik sur bouton la Jtable reste la même alors que le tableau lign a été changé <== absolument aucune idée concernant l'action à réaliser lorsque tu cliques sur ton bouton.
Concernant la création de la JTable: en reprenant ton code ci-dessus, essaie ceci:
String[][] lign = new String[][] {..........................................};
String[] cols = new String[] {"Min", "Max", "Avg" };
DefaultTableModel model = new DefaultTableModel( lign, cols);
table = new JTable();
table.setModel(model);
++
bonjour , j'ai un probléme je me connecte à la BD à partir du programme en java j'ai insérer des ligne dans la BD mais le probléme c'est k'il m'affiche pas les attributs ( matricule,nom,prénom,tel,age) il m'affiche que les lignes que j'ai insérer dans la BD dans l'interface pouvez vous m'aidez SVP qu'est ce que je dois changer dans le code comment faire et merci d'avance
import java.awt.*;
import java.io.*;
import java.sql.*;
import javax.swing.*;
import java.util.*;
public class Interfacee extends JFrame {
JPanel panneau=new JPanel();
JTable table=new JTable();
Connection c = null;
Statement stm=null;
ResultSet rs = null;
public Interfacee()
{
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
c = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "system", "123");
System.out.println("Connection établie");
} catch (ClassNotFoundException e)
{
System.out.println("Oracle :Pilotes non chargés");
} catch (SQLException ex)
{
System.out.println("Oracle : Connection non établie");
}
Vector <String> NomCol=new Vector<String>();
NomCol.add("matricule");
NomCol.add("nom");
NomCol.add("prénom");
NomCol.add("tel");
NomCol.add("age");
Vector <Object> ob=new Vector<Object>();
try {
stm=c.createStatement();
rs=stm.executeQuery("Select * from enseignant ");
while(rs.next()){
Vector <Object> ob1=new Vector<Object>();
ob1.add(rs.getString("matricule"));
ob1.add(rs.getString(2));
ob1.add(rs.getString(3));
ob1.add(rs.getInt(4));
ob1.add(rs.getInt(5));
ob.add(ob1);
}
} catch (SQLException e)
{
System.out.println("Erreur d'affichage ");
}
table.setModel(new javax.swing.table.DefaultTableModel(ob,NomCol));
panneau.add(table);
this.add(panneau,BorderLayout.CENTER);
setBounds(400,400,400,400);
this.setTitle("Gestion des enseignants");
}
public static void main(String[] args) throws IOException, SQLException{
Interfacee I=new Interfacee();
I.setVisible(true);
}
}
import java.awt.*;
import java.io.*;
import java.sql.*;
import javax.swing.*;
import java.util.*;
public class Interfacee extends JFrame {
JPanel panneau=new JPanel();
JTable table=new JTable();
Connection c = null;
Statement stm=null;
ResultSet rs = null;
public Interfacee()
{
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
c = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "system", "123");
System.out.println("Connection établie");
} catch (ClassNotFoundException e)
{
System.out.println("Oracle :Pilotes non chargés");
} catch (SQLException ex)
{
System.out.println("Oracle : Connection non établie");
}
Vector <String> NomCol=new Vector<String>();
NomCol.add("matricule");
NomCol.add("nom");
NomCol.add("prénom");
NomCol.add("tel");
NomCol.add("age");
Vector <Object> ob=new Vector<Object>();
try {
stm=c.createStatement();
rs=stm.executeQuery("Select * from enseignant ");
while(rs.next()){
Vector <Object> ob1=new Vector<Object>();
ob1.add(rs.getString("matricule"));
ob1.add(rs.getString(2));
ob1.add(rs.getString(3));
ob1.add(rs.getInt(4));
ob1.add(rs.getInt(5));
ob.add(ob1);
}
} catch (SQLException e)
{
System.out.println("Erreur d'affichage ");
}
table.setModel(new javax.swing.table.DefaultTableModel(ob,NomCol));
panneau.add(table);
this.add(panneau,BorderLayout.CENTER);
setBounds(400,400,400,400);
this.setTitle("Gestion des enseignants");
}
public static void main(String[] args) throws IOException, SQLException{
Interfacee I=new Interfacee();
I.setVisible(true);
}
}
ce que vous proposez n marche pas, rien n'est affiché dans ce cas.
mais enfin j'ai trouvé 1 solution : il faut remplacer DefaultTableModel model = new DefaultTableModel( lign, cols);
par ce là: model.setDataVector(lign, cols); et n'oublions pas d'initialiser model au début :
DefaultTableModel model = new DefaultTableModel( );
A+