el codigo es largo, pero te pongo el actionperformed de la segunda ventana (recuerda que los desperfectos de pintura le pasan a la primera ventana)
Código:
salvar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String arr[]=new String[modelo.getColumnCount()];
int i=0, j=0;
if (mod2.getRowCount()<=10) {
j=mod2.getRowCount();
}else {
j=11;
}
if (j<11) {
try {
while (i < modelo.getColumnCount()) {
arr[i] = modelo.getValueAt(tabla.getSelectedRow(),i).toString();
i++;
}
mod2.insertRow(j,arr);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null,
"Error, Seleccione un producto a agregar\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
}
}else {
mod2.removeRow(0);
JOptionPane.showMessageDialog(null, "Error, solo puede agregar 10 productos","Error",JOptionPane.ERROR_MESSAGE);
}
#aqui es cuando deberia cerrar
repaint();
dispose();
}});
mod2 es un modelo de Jtable que esta en la primera ventana. lo paso por parametro...
si quieres todo el codigo lo pongo, pero creo que no haria falta... gracias por responder.