Boa tarde pessoal.
Estou com um problema na hora de rodar um JFrame.
O mesmo roda em duas máquinas, mas com inicializações diferentes no construtor:
public FrmComunicarCliente(ClienteKdc nucleo,String ipcliente,String direcao) {
initComponents();
setTitle("Comunicando com "+ipcliente);
setKernel(nucleo);
setIpDestino(ipcliente);
show();
setVisible(true);
if (direcao.equals("EMISSOR")){
iniciarComunicacao();//possui um loop recebento mensagens
}else if(direcao.equals("RECEPTOR")){
processarConexao();//possui um loop recebento mensagens
}
}
No processarConexão há um socketServer em um laço Do While que fica lendo as mensagens recebidas.
No iniciarConexão conecta no processarConexao em outra máquina e também entra num Do While para ler as mensagens recebidas.
O problema é o seguinte: O frame quando para no looping do processarConexao aparece normalmente, mas quando para no looping do iniciarComunicacao os componentes não aparecem. Somente depois que fecho o frame do processarConexao, é que aparece o frame que está rodando o iniciarComunicacao, com as informações recebidas.
Tenho que tirar os métodos do construtor e iniciar os frames como uma nova aplicação, pelo main?
Obs.: nenhum dos métodos trata de maneira especial a interface, já tentei show, validate, setvisible e não funcionaram.
Procurei mas não achei algo parecido nos tópicos, mas se tiver me desculpem. :oops: