bueno te paso el código que le puse de ejemplo a otro colega de como llenar la table , noto algo muy enredoso tantos pasos para poblar la tabla y la forma en que estas declarando el tablemodel , en resumen yo crearía el código de la siguiente manera
Código:
public class FormularioTrabajador extends javax.swing.JFrame {
DefaultTableModel Tabla;
public FormularioTrabajador(){
initComponents();
CargarTabla();
}
public void CargarTabla(){
String titulos[] = {"Rut","Nombre","Ciudad","Sueldo"};
Tabla = new DefaultTableModel(null,titulos);
//aquí agregar tu arreglo , aunque no comprendo de donde sacas la información para crear el array ni el porque le estas asigando ese espacio de 5 y 10 , creo que aquí viene el punto a aclarar para comprender lo que sucede pues según creo eso provoca se agrege el renglón de la manera que describes al recorrer el bucle
for(){
tabla.addRow
}
jtable.setModel(tabla);
}
}
a continuación te posteo el código de como lo haría con una consulta a una base de datos para que te des una idea de como lo hago yo en el ciclo o bucle de la consulta
Código:
try{
// estas son las cabeceras que van en el tablemodel
String [] titulos = {"NOMBRE","APELLIDO"};
// creamos el arreglo que serán los rows que iremos pasando al modelo de la tabla
String [] registro = new String [2];
// Creamos el modelo de la tabla y le pasamos el primer parámetro de entrada que son las cabeceras
mdlPersonas = new DefaultTableModel(null,titulos);
//realizamos la consulta
Statement stConsulta = cn.CreateStatement();
ResultSet rsPersonas = stConsulta.executeQuery(select NOMBRE,APELLIDO from PERSONAS);
while(rsPersonas.next()){
//definimos el contenido del arreglo y lo agregamos al modelo de tabla
registro [0] = rsPersonas.getString("NOMBRE");
registro [1] = rsPersonas.getString("APELLIDO");
mdlPersonas.addRow(registro);
}
// al terminar le asignamos el modelo al jtable
tblPersonas.setModel(mdlPersonas);
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,e);
}
finally{
//cerramos la conexion
cn.close
}