¿Como hacer una resta en un jtable en java netbeans?

Iniciado por Larry16, 3 Abril 2016, 01:46 AM

0 Miembros y 1 Visitante están viendo este tema.

Larry16

Hola buenas tardes, quisiera que me apoyaran en resolver el problema que tengo para poder realizar una resta utilizando un jtable en netbeans.

Es un sistema de abonos el que estoy realizando, busco el cliente que va realizar un abono y me salen todas sus deudas, entonces selecciono un producto en deuda, le ingreso nueva cantidad que el cliente abono y al momento de dar en abonar solo me tiene que hacer la resta a la fila y producto que estoy seleccionanado. pero el detalle esta en que lo hace en todos los productos que tengo. espero me haya explicado bien.

les dejo las lineas de codigo que tengo.

Este codigo es el de la resta.

void Restaa() {

String Res;
String Abo;
int Resta;
int Abono;
int Debe;


for (int i = 0; i < tbAbono.getRowCount(); i++) {

Abo = tbAbono.getValueAt(i, 5).toString();
Res = tbAbono.getValueAt(i, 6).toString();
Resta = Integer.parseInt(Res);
Abono = Integer.parseInt(Abo);
Debe = Resta - Abono;

tbAbono.setValueAt(Math.round(Debe), i, 6);

}

}

Esta otra es de la tabla, hace la funcion de que al momento de que selecciono una fila. me mande a un txtfiedl aparte para poder ingresar el nuevo abono.

private void tbAbonoMouseClicked(java.awt.event.MouseEvent evt) {

int filaselec= tbAbono.getSelectedRow();
txtAbono.setText(tbAbono.getValueAt(filaselec, 5).toString());
filas=filaselec;

}

Y este es el del boton abonar. y aqui mando a llamar a metodo Restaa.

private void btnabonarActionPerformed(java.awt.event.ActionEven t evt) {
try {
String NºDeVenta = "";

String[] datos = new String[7];

int fila = tbAbono.getSelectedRow();

if (fila == -1) {
JOptionPane.showMessageDialog(null, "SELECCIONE EL PRODUCTO QUE DESEA ABONAR");
} else {

String NVenta = tbAbono.getValueAt(filas, 0).toString();
String UltimoAbo = tbAbono.getValueAt(filas, 1).toString();
String ClaArti = tbAbono.getValueAt(filas, 2).toString();
String Arti = tbAbono.getValueAt(filas, 3).toString();
String TV = tbAbono.getValueAt(filas, 4).toString();
String abo = txtAbono.getText();
String Resta = tbAbono.getValueAt(filas, 6).toString();

datos[0] = NVenta;
datos[1] = UltimoAbo;
datos[2] = ClaArti;
datos[3] = Arti;
datos[4] = TV;
datos[5] = abo;
datos[6] = Resta;

for (int i = 0; i < tbAbono.getColumnCount(); i++) {
modelo.setValueAt(datos, filas, i);
}


Restaa();

}

} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage(), "Error al moemto de abonar", JOptionPane.ERROR_MESSAGE);
}
}


Espero me puedan ayudar. porque ya le he movido mucho pero no me sale. gracias por su atencion.

LaiaxanIV

Puedes pasar el código del programa entero? Y explicar un poco mejor que hay que hacer xD. No entiendo muy bien lo que tienes que lograr.

Larry16

Claro que si. Me gustaría mandarte unas imágenes para poder explicar mejor. Donde más te puedo contactar

LaiaxanIV


Larry16

Amigo tienes oculto tu correo. El mio esta visible para que me hables