A ver, es tan sencillo como guardar la referencia al modelo antes de asignarlo.
Código Java:
Ver originalpublic BorrarPedido() {
initComponents();
new String[]{" ",
"Nº PEDIDO",
"PROVEEDOR",
"FECHA PEDIDO",
"IMPORTE TOTAL"},
0) {
Class[] types = new Class[]{
};
public Class getColumnClass(int columnIndex) {
return types[columnIndex];
}
};
int anchos[] = {1,30, 50, 60, 60};
for (int i = 0; i < jTable1.getColumnCount(); i++) {
jTable1.getColumnModel().getColumn(i).setPreferredWidth(anchos[i]);
}
Porque sino estás no estás usando el modelo de tabla que le has puesto al JTable, sino uno que no está enlazado.
Es decir, con esta sentencia:
DefaultTableModel tabla = new DefaultTableModel(........
estás creando una clase derivada de DefaultTableModel y sobrescribes los métodos que te interesan para que hagan lo que tu quieras.
Luego, asignas el modelo a la tabla (pasandosela al constructor o con setModel):
jTable1 = new JTable (tabla);
Ahora ya puedes hacer:
tabla.addRow(datos);