Bonjour,
Voili voilou mon pb, je me mets à swing, histoire de changer et voili pas que j'ai l'idée de faire apparaître des données dans un tableau !
Dans la fenêtre principale j'utilise le code suivant ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 import java.util.Vector; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import model.ChargementBase; import model.user; /** * * @author moi */ public class AffichageTables extends JFrame{ public Vector data; public Vector columnName; public JTable tableau; public JPanel panel; public AffichageTables(){ System.out.println("Chargement AffichageTables"); //panel = new JPanel(); //panel.setBounds(new Rectangle(250,150,30,10)); //panel.setSize(new Dimension(40,40)); //this.getContentPane().add(panel); //this.setSize(350, 160); this.pack(); } public void getData(String table){ ChargementBase base = new ChargementBase(); Vector<user> users = new Vector<user>(); users = (Vector<user>) base.getUtilisateurs(); columnName = new Vector(); columnName.add("Clef"); columnName.add("Nom"); tableau = new JTable(users,columnName); tableau.setBounds(10,10,100,100); //panel.add(new Button("essai")); JScrollPane scrollPane = new JScrollPane(tableau); scrollPane.add(tableau); //panel.add(tableau); tableau.setVisible(true); this.validate(); } }
La frame s'affiche mais pas de Jtable ??? par contre si j'utilise un Button dans un panel pas de pb !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 private void listeUserMenuItemActionPerformed(java.awt.event.ActionEvent evt) { if(this.table != null){ this.table.getData("essai"); this.table.setVisible(true); this.table.setFocusable(true); }else{ System.out.println("Création du tableau!!!"); table = new AffichageTables(); table.getData("essai2"); table.setBounds(30, 10, 430, 220); //desktopPane.add(table, javax.swing.JLayeredPane.DEFAULT_LAYER); System.out.println("Création du tableau!!!"); this.table.setVisible(true); this.table.setFocusable(true); this.desktopPane.revalidate(); }
J'avoue je patauge un peu dans l'api, bref quelqu'un peut il me guider ou m'aider à réécrire proprement ? histoire que je comprenne enfin SWING
PS : pas d'exception au niveau base de donnée.
Olivier
Partager