Vale, el problema está claro.
La variable tabla (a la cual le asignas un objeto de la clase DefaultTableModel) no es el modelo que estás usando realmente en la JTable, sino el que le pasas a setModel.
Te paso como quedaría bien hecho:
Código Java:
Ver originalpublic class BorrarPedido
extends javax.
swing.
JFrame {
new String[]{" ",
"Nº PEDIDO",
"PROVEEDOR",
"FECHA PEDIDO",
"IMPORTE TOTAL"},
0) {
Class[] types = new Class[]{
};
public Class getColumnClass(int columnIndex) {
return types[columnIndex];
}
};
GestorBD gbd = new GestorBD();
/**
* Creates new form BorrarPedido
*/
public BorrarPedido() {
initComponents();
int anchos[] = {1,30, 50, 60, 60};
for (int i = 0; i < jTable1.getColumnCount(); i++) {
jTable1.getColumnModel().getColumn(i).setPreferredWidth(anchos[i]);
}
setLocationRelativeTo(null);
combo_cif.setVisible(false);
List<Proveedor> lista = gbd.proveedores();
for (int i = 0; i < lista.size(); i++) {
combo_proveedor.addItem(lista.get(i).getNombre());
combo_cif.addItem(lista.get(i).getCIF());
}
}
private void buscarActionPerformed
(java.
awt.
event.
ActionEvent evt
) { borrar.setEnabled(true);
//busca los pedidos comprendidos entre las dos fechas
//las fechas pueden ser nulas!!!! en ese caso saca todos los pedidos del proveedor
//miramos cual es el proveedor
int pos = combo_proveedor.getSelectedIndex();
combo_cif.setSelectedIndex(pos);
String prov
= combo_cif.
getSelectedItem().
toString();
List
<Pedido
> pedidosProveedor
= new ArrayList(); List<Pedido> todosPedidos = gbd.pedidos();
if(fecha1.getDate() == null && fecha2.getDate()!= null){
//cogemos la fecha1
Date fech2
= fecha2.
getDate(); //buscamos pedidos del proveedor mayores o iguales a la fecha2
//sacamos toda la lista de todos los pedidos a proveedor
for (int i = 0; i < todosPedidos.size(); i++) {
if (todosPedidos.get(i).getProveedor().equalsIgnoreCase(prov) && todosPedidos.get(i).getFecha().compareTo(fech2) <= 0) {
pedidosProveedor.add(todosPedidos.get(i));
}
}
System.
out.
println("tam***" +pedidosProveedor.
size()); //esto lo puse a ver si entraba y entra for (int i = 0; i < pedidosProveedor.size(); i++) {
datos
[1] = String.
valueOf(pedidosProveedor.
get(i
).
getNumeroPedido()); datos[2] = prov;
datos
[3] = String.
valueOf(pedidosProveedor.
get(i
).
getFecha()); datos
[4] = String.
valueOf(pedidosProveedor.
get(i
).
getImporteTotal()); tabla.addRow(datos);
}
}