Java - SUMAR TODOS LOS VALORES DE UNA COLUMNA DE UN JTABLE

 
Vista:
Imágen de perfil de Brian
Val: 16
Ha aumentado 1 puesto en Java (en relación al último mes)
Gráfica de Java

SUMAR TODOS LOS VALORES DE UNA COLUMNA DE UN JTABLE

Publicado por Brian (8 intervenciones) el 15/04/2020 00:11:48
Saludos. Estoy tratando de sumar todos los valores de una columna en un jtable y pasarlos a un jtextfiel, el problema es que el calculo se hace justo despues de que inserto el tercer registro en la tabla, y tambíen, antes de insertar el tercer registro me lanza dos errores java.lang.NullPointerException.

1
2
3
4
5
6
7
8
9
10
11
12
public void CalcularTotal() {
        double precio = 0;
 
            for (int i = 0; i < tbFacturacion.getRowCount() -1; i++) {
 
                double a = (double) dtmtbFacturacion.getValueAt(i, 3);
 
                precio += a;
            }
 
        tfTotalprecio.setText(String.valueOf(precio));
    }

La columna de donde extraigo el valor es de tipo double, ya definido previamente en el jtable. Agradezco de antemano su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 129
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

SUMAR TODOS LOS VALORES DE UNA COLUMNA DE UN JTABLE

Publicado por Juan Manuel (53 intervenciones) el 15/04/2020 02:51:39
me gustaria poder analizar como funcional el objeto dtmtbFacturacion con su respectivo metodo, creo que por esa linea estaria el problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Brian
Val: 16
Ha aumentado 1 puesto en Java (en relación al último mes)
Gráfica de Java

SUMAR TODOS LOS VALORES DE UNA COLUMNA DE UN JTABLE

Publicado por Brian (8 intervenciones) el 15/04/2020 04:38:50
dtmtbFacturacion es un objeto DefaultTableModel que toma el valor del TableModel del jtable tbFacturacion:

1
DefaultTableModel dtmtbFacturacion = (DefaultTableModel) tbFacturacion.getModel();

Lo cree para manipular mejor la tabla. Estoy trabajando en NeatBeans utilizando la interfaz grafica.

Este es el codigo que el IDE genero agregue el jtable al jFrame

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
tbFacturacion.setAutoCreateRowSorter(true);
        tbFacturacion.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null}
            },
            new String [] {
                "Código", "Descripción", "Cód. ARS", "Precio", "Cobertura", "Descto.", "Monto"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.Integer.class, java.lang.String.class, java.lang.Integer.class, java.lang.Double.class, java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, true, false
            };
 
            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
 
            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tbFacturacion.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);
        jScrollPane1.setViewportView(tbFacturacion);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar