Pessoal, estou com o seguinte problema:
tem uma tela desenhada que funciona normalmente (Shell). ao clicar em um botão (evento SelectionListener) eu quero que ele deixe o Shell invisivel (setVisible(false)), abra uma outra tela e no final da execução dessa tela (dispose()), ele retorne para o SelectionListener e volte para visivel (setVisible(true)).
Ele abre a nova tela, mas não deixa a anterior invisivel, posso até move-la (mas ela não está em focus, portanto enabled = false). Quando fecho a nova tela (dispose()), ele pisca a anterior e boa…
o correto seria abrir a nova e tornar invisivel a anterior.
o código do listener esta assim
butIncluir.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
System.out.println("butIncluir.widgetSelected, event="
+ evt);
//torna invisivel o shell atual
dialogShell.setVisible(false);
//funcao com a nova tela
genericas.testeCadastro();
//torna visivel novamente
dialogShell.setVisible(true);
}
});
alguém teria uma idéia do que pode ser?
tem a ver com o código estar preso ao listener de um botão inserido no shell?
vlw