Hola Danx,buen dia! y gracias por tu respuesta, mira, logre agregar y eliminar seleccionando la fila (Por el momento, no por medio de checkBox ) pero me da un error,que cuando estoy eliminando, de arriba hacia abajo, o tengo 4 opciones cargadas en Jtable y intento eliminar la del medio se me borra toda la tabla o queda a la mitad, y siempre me da este error:
Código:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1 >= 1
pero todo va con normalidad cuando elimino de abajo hacia arriba de uno a uno. Es muy raro, la base de datos se carga en un ComboBox, cuando selecciono una opción la carga en el Jtable, acá pongo el código:
ELIMINAR:
Código:
btnEliminar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int row = table.getSelectedRow();
int total=0;
String totalFinal=null;
try
{
int fila = table.getRowCount();
int i;
String posicion = null;
DefaultTableModel modeloDeMiTabla = (DefaultTableModel) table.getModel();
for (i = 0; i < fila; i--) {
posicion = (String) table.getValueAt(row, 3);
System.out.println("valor en la poscion"+ posicion);
int valoraeliminar = Integer.parseInt(posicion);
System.out.println("valor en la poscion pasado a int"+ valoraeliminar); ///HASTA ACA TODO DE 10!!
int valor = Integer.parseInt(textField_Total.getText());//////////////////
System.out.println("valor existente en el textfield:"+ valor);
total = valor - valoraeliminar;
System.out.println("valor total:"+ total);
modeloDeMiTabla.removeRow(row);
totalFinal = String.valueOf(total);
System.out.println("valor final :"+ totalFinal);
}
}catch(ArrayIndexOutOfBoundsException ex){;}
textField_Total.setText(totalFinal);
numeroFilas--;
}
});
AGREGAR:
Código:
String posicion = null;
int totalgeneral = 0;
DefaultTableModel modeloDeMiTabla=(DefaultTableModel)table.getModel();
modeloDeMiTabla.addRow(new Object[numeroFilas]);
table.setValueAt(checkBoxJtable, numeroFilas, 0); ////Insertamos el check box!
table.setValueAt(textField_NombreBebidas.getText(), numeroFilas, 1);
table.setValueAt("13:00", numeroFilas, 2);
table.setValueAt(textField_PrecioBebidas.getText(), numeroFilas, 3);
int fila = table.getRowCount();
int i;
for (i = 0; i < fila; i++) {
posicion = (String) table.getValueAt(i, 3);
int valor = Integer.parseInt(posicion);
totalgeneral= totalgeneral+valor;
}
String totalFinal = String.valueOf(totalgeneral);
textField_Total.setText(totalFinal);
numeroFilas++;
Les agradezco la ayuda!!!!