ciao a tutti.
Sto cercando di realizzare un programma che riconosca i valori di un accellerometro e li inserisca in un grafico!
Fin qui tutto procede bene, ora vorrei inserire i valori campionati in una JTable, ma non riesco ad inserirli.
Qui ho postato solo la parte di codice relativa al problema.
Qui vi posto la parte di codice necessaria quando viene premuto il pulsante per l'inserimento dei dati raccolti nella tabella.codice:private class DatiRilevati { public long tempo; public double gvalue; public DatiRilevati(long tempo, double gvalue) { this.tempo = tempo; this.gvalue = gvalue; } } private ArrayList<DatiRilevati> datiArray = new ArrayList<DatiRilevati>(); private AbstractTableModel tmod = new AbstractTableModel() { private String colName[] = {"Tempo", "G-value" }; public String getColumnName(int col) { return colName[col]; } public int getRowCount() { return datiArray.size(); } public int getColumnCount() { return 2; } public Object getValueAt(int row, int col) { DatiRilevati data = datiArray.get(datiArray.size() - row - 1); return (col == 0) ? data.tempo : data.gvalue ; } public boolean isCellEditable(int row, int col) { return false; } public Class getColumnClass(int c) { return (c == 0) ? Long.class : Double.class; } };
Ho provato a verificare con i due System.out.println(graphView.getTime(i)) e System.out.println(graphView.getGValue(i)) se i valori erano corretti ed effettivamente son giusti, quindi è proprio un problema di inserimento dei dati nella tabella.codice:private void recordButtonActionPerformed(java.awt.event.ActionEvent evt) { int i=0; int j= graphView.getSampleTime(); int k=graphView.getIndexMax(); System.out.println(j); System.out.println(k); while(i<k){ datiArray.add(new DatiRilevati(graphView.getTime(i), graphView.getGvalue(i))); i=i+j; System.out.print(graphView.getTime(i)); System.out.println(" "+graphView.getGvalue(i)); } readyRecord = false; recordButton.setEnabled(false); }
Vi prego aiutatemi!!

Rispondi quotando