ciao io ho fatto cos'ì ma non funziona
codice:
public MyClass(){
JPanel panel1 = new JPanel();
Dimensione dimensioneComponenti = new Dimensione();
Dimension d2 = new Dimension();
d2.setSize(dimensioneComponenti.DimensionePanel());
panel1.setPreferredSize(d2);
this.setLayout(new BorderLayout());
this.add(panel1, BorderLayout.CENTER);
this.setBorder(BorderFactory.createTitledBorder("Registratore di Cassa"));
MyTableModel tableModel = new MyTableModel();
ArrayList<Articoli> array = new ArrayList<Articoli>();
Articoli art = new Articoli();
art.setCodice(1);
art.setNome("Art 1");
art.setQuantita(100);
array.add(art);
art = new Articoli();
art.setCodice(2);
art.setNome("Art 2");
art.setQuantita(1020);
array.add(art);
tableModel.setlLista(array);
JTable table = new JTable(tableModel);
table.setAutoResizeMode (JTable.AUTO_RESIZE_ALL_COLUMNS);
JScrollPane jScrollPane1 = new javax.swing.JScrollPane();
jScrollPane1.setName("jScrollPane1");
jScrollPane1.setViewportView(table);
jScrollPane1.setPreferredSize(d2);
jScrollPane1.getViewport().add(table);
jScrollPane1.setVisible(true);
GridBagConstraints GBC = new GridBagConstraints();
Container CR = new Container();
GridBagLayout GBL = new GridBagLayout();
CR.setComponentOrientation(ComponentOrientation.UNKNOWN);
CR.setLayout(GBL);
panel1.add(CR);
GBC = new GridBagConstraints();
CR.add(jScrollPane1);
GBC.gridx=0;
GBC.gridy=1;
GBC.gridwidth=10;
GBC.gridheight=11;
GBC.insets.top=5;
GBC.insets.bottom=10;
GBC.insets.left=2;
GBC.insets.right=10;
GBC.fill=GridBagConstraints.HORIZONTAL;
GBL.setConstraints(jScrollPane1,GBC);
}
static class MyTableModel extends DefaultTableModel {
private static final Object[] columnNames = {"Cod Prodotto", "Descrizione Prodotto", "Quantità"};
public ArrayList<Articoli> lista;
public MyTableModel() {
super(columnNames, 1); // 10 righe iniziali (vuote)
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
// return columnIndex == 1; // Solo la prima colonna è editabile
return (columnIndex != 0);
}
public Class getColumnClass(Float columnIndex) {
return Float.class; // Le due colonne sono numeri interi
}
public void setlLista(ArrayList<Articoli> lista){
this.lista=lista;
fireTableDataChanged();
}
}//fine