
Originariamente inviata da
andbin
DefaultTableModel ha diversi costruttori, alcuni prendono già tutta l'intera struttura dati bidimensionale. Poi comunque ha gli
addRow(Object[] rowData)
addRow(Vector rowData)
e nel caso si voglia sostituire tutto:
setDataVector(Object[][] dataVector, Object[] columnIdentifiers)
setDataVector(Vector dataVector, Vector columnIdentifiers)
Quindi ti basta ragionare in termini di questi tipi che può gestire.
codice:
String nomecolonna[]={"Nome","Cognome"};
jf.nomecolonna=nomecolonna;
Object [][]data = {
{Nome2},{Cognome}
};
jf.data=data;
JTable table = new JTable(data, nomecolonna);
Container cp = frame.getContentPane();
cp.setLayout(new BorderLayout());
cp.add(table.getTableHeader(), BorderLayout.PAGE_START);
cp.add(table, BorderLayout.CENTER);
JScrollPane scrollPane = new JScrollPane(table);
table.setFillsViewportHeight(true);
DefaultTableModel model = new DefaultTableModel();
model.addColumn("Nome");
model.addColumn("Cognome");
table.setModel(model);
model.addRow(data);
model.setDataVector(data, nomecolonna);
frame.setVisible(true);
Allora ho inserito le due righe di codice che mi hai detto ma non cambia nulla.
codice:
model.addRow(data);
model.setDataVector(data, nomecolonna);
Poi eseguendo un
codice:
system.out.println(""+nomecolonna);
mi dà come contenuto una cosa strana anche per quanto riguarda il
codice:
System.out.println(""+data);
Cosa sbaglio?