Seguinte… eu quero que, quando ocorrer um evento na minha aplicação, a tela do programa apareça por cima das outras. Entretanto ja dei uma garimpada na net, no forum e até na api e não encontrei nada que pudesse me ajudar…
Em C# o comando é topMost(), mas em Java não sei qual comando usar…
Vou tentar exemplificar pra ver se alguem me da uma luz…
Supondo que eu tenha um evento como esse:
int delay = 1000; //1 Segundo
ActionListener mostraJanela = new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
//Colocar aqui para a janela aparecer sobre as outras
}
};
javax.swing.Timer timer = new javax.swing.Timer(delay, mostraJanela);
timer.setRepeats(true);
timer.start();
Então, a cada segundo o evento vai colocar a minha janela sobre as outras… Tipo, se o usuário estiver no word, por exemplo, vai colocar a minha janela por cima do word… sacaram?
Tentei um JDialog com um setModal(true) mas a única coisa que acontecia era o botão
da barra de tarefas do windows ficar piscando assim com entanglement disse e se o
JDialog fosse criado sem um pai (neste caso o JFrame principal) o componente aparecia lá em baixo.
Acho que para fazer com que o seu JFrame ou JDialog seja exibido em cima de tudo, ele teria
que furar a fila de exibição de janelas do windows (se existir) ou para cada janela que for aberta
o seu componente tenha como parent esta janela.
Sei lá, acho que é meio ipossível fazer isso com os métodos fornecidos por esses componentes.