Pessoal,
estou tendo uma dificuldade ao fazer um JDialog com componentes que são adicionados e alterados
dinamicamente. O meu código precisa ficar “ouvindo” um componente e ir montando a tela conforme for necessário.
O problema é que a não consigo fazer o refresh da janela. Ela parece que fica travada durante o processamento, exibindo tudo
somente no final. Eu escrevi um código que simula o problema. Se alguém puder apontar o que está faltando…
Note que o while simula um processamento. Este while não pode ficar em uma nova thread. (Use o JniWrapper para ler uma dll, mas não funciona em outra thread).
Obrigado
// Trecho de codigo para simular o problema do "refresh"
JDialog jDialog = new JDialog();
jDialog.setSize(250,250);
jDialog.setAlwaysOnTop(true);
jDialog.setLocationRelativeTo(null);
jDialog.setVisible(true);
//
// Neste ponto deveria ser visto a janela wm branco
// Nem com o repaint funciona corretamente
//
jDialog.repaint(); // aqui precisaria fazer um "refresh" da tela. Nao funciona
jDialog.validate(); // e nem assim
//
JLabel lblStatus = new JLabel();
jDialog.add(lblStatus);
lblStatus.setText("Aguarde");
lblStatus.validate(); // aqui precisaria fazer um "refresh" da tela. Nao funciona
lblStatus.repaint(); // e nem assim
jDialog.repaint(); // e nem assim
jDialog.validate(); // e nem assim
//
// Aqui deveria mostrar o label "aguarde" enquanto o processamento é executado
// Mas nao mostra nada, porque o "refresh" da tela nao foi executado
