Salut, je veux faire un tableau de 5 collones et 5 rangées, je veux y mettre des jTextField:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 private Object datasJT1[][]=new Object[5][1000]; private Object titresJT1[]={"REF", "Description", "Prix unitaire", "Quantité", "Total"};
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for(int i=0;i<5;i++) { datasJT1[0][i]=new JTextField(); datasJT1[1][i]=new JTextField(); datasJT1[2][i]=new JTextField(); datasJT1[3][i]=new JTextField(); datasJT1[4][i]=new JTextField(); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 jTable1.setModel(new ZModel(datasJT1, titresJT1)); jTable1.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_ALL_COLUMNS); jScrollPane1.setViewportView(jTable1); TableColumn colonne=jTable1.getColumnModel().getColumn(0); colonne.setPreferredWidth(50); colonne=jTable1.getColumnModel().getColumn(1); colonne.setPreferredWidth(200); colonne=jTable1.getColumnModel().getColumn(2); colonne.setPreferredWidth(50); colonne=jTable1.getColumnModel().getColumn(3); colonne.setPreferredWidth(50); colonne=jTable1.getColumnModel().getColumn(4); colonne.setPreferredWidth(50);
Code : Sélectionner tout - Visualiser dans une fenêtre à part jTable1.setDefaultRenderer(JComponent.class, new TableComponent());Le résultat c'est que j'ai la description des objets (javax.swing.jtextfield ...)
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 class ZModel extends AbstractTableModel { private Object data[][]; private Object title[]; private ZModel(Object[][] datasJT1, Object[] titresJT1) { this.data=datasJT1; this.title=titresJT1; } public int getRowCount() { return this.data.length; } public int getColumnCount() { return this.title.length; } public Object getValueAt(int row, int col) { return this.data[row][col]; } @Override public String getColumnName(int col) { return this.title[col].toString(); } } public class TableComponent extends DefaultTableCellRenderer { @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); //Si la valeur de la cellule est un JButton, on transtype notre valeur if (value instanceof JTextField){ return (JTextField) value; } else return this; } }
plutôt que les text fields.
J'ai du me planter quelque part mais je ne vois pas ou
Merci
Partager