Est ce que quelqun sait comment faire pour afficher dans une JFrame un tableau à 2 dimensions?
Merci d'avance
Est ce que quelqun sait comment faire pour afficher dans une JFrame un tableau à 2 dimensions?
Merci d'avance
me répond à moi meme. Il faut utiliser une JTable ca a l'air de marcher
j'ai un probleme encore.
voila la fonction que je fais:
et quand j'execute mon code Eclipse me dit :
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 public void constrTableaux(ArrayList liste1, ArrayList liste2) { JInternalFrame fr = new JInternalFrame(); framee.add(fr); framee.repaint(); fr.setIconifiable(true); fr.setSize(700, 500);// dimension fr.setResizable(false);// nom redimensionnable fr.setClosable(true); WindowListener lo = new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0); } }; Vector vec1 = new Vector(liste1); Vector vec2 = new Vector(liste2); JTable table = new JTable(vec1,vec2); fr.getContentPane().add(table); fr.setVisible(true); }
cette exeption est sur la ligne JTable table = new JTable(vec1,vec2);java.lang.ClassCastException
at javax.swing.table.DefaultTableModel.justifyRows(Unknown Source)
at javax.swing.table.DefaultTableModel.setDataVector(Unknown Source)
at javax.swing.table.DefaultTableModel.<init>(Unknown Source)
at javax.swing.JTable.<init>(Unknown Source)
at ParseurFichier2.constrTableaux(ParseurFichier2.java:357)
at ParseurFichier2.analyseTout(ParseurFichier2.java:1855)
quelqun sait pourquoi?
Merci d'avance
lu,
regarde le constructeur JTable avec deux vector mais je pense que le premier vecteur que tu lui passes doit contenir autant de vecteur que de lignes dans ta table.
donc, je pense que tu devrais passer un vecteur contenant un seul vecteur dans ton cas.
merci, effectivement ca marche. Mais maintenant j'ai un nouveau probleme.
Je met la JTable dans un JScrollPane mais à l'afichage il n'y a ni scroll vertical ni scroll horizontal.
et au lieu d'avoir un scrollHorizontal toutes les cellules de la table sont ecrasé et donc illisible. Comment doit je faire pour faire apparaitre les scroll.
Voici le code
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
48
49
50
51
52 public void constrTableaux(ArrayList liste1, ArrayList liste2) { JInternalFrame fr = new JInternalFrame(); framee.add(fr); framee.repaint(); fr.setIconifiable(true); fr.setSize(700, 500);// dimension fr.setResizable(true);// nom redimensionnable fr.setClosable(true); WindowListener lo = new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0); } }; Vector vec1 = new Vector(); for(int i = 0 ; i < liste1.size() ; i++) { Elements elem = (Elements)liste1.get(i); vec1.add(elem.nom); } Vector vec2 = new Vector(); for(int i = 0 ; i < liste2.size() ; i++) { Elements elem = (Elements)liste2.get(i); vec2.add(elem.nom); } Vector vec3 = new Vector(); vec3.add(vec1); vec3.add(vec2); Vector names = new Vector(); names.add("processus"); names.add("roles"); System.out.println("v1 = "+vec1); JTable table = new JTable(vec3,vec1); JScrollPane scroll = new JScrollPane(); scroll.setViewportView(table); fr.getContentPane().add(scroll); fr.setVisible(true); }
as tu le même résultat si au lieu de
tu faisJScrollPane scroll = new JScrollPane();
scroll.setViewportView(table);
fr.getContentPane().add(scroll);
fr.setVisible(true);
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 JScrollPane scroll = new JScrollPane(table); fr.getContentPane().add(scroll); fr.setVisible(true);
Partager