Eae pessoal, gostaria de saber se tem como abrir um jframe automaticamente apos alguns segundos.
Estou fazendo um Projeto da faculdade e estou utilizando o netbeans, criei a “tela inicial” do aplicativo e gostaria que apos alguns segundos abrisse o jframe de login. como o da imagem .
Isso aqui não funciona, pois a variável do tipo inteiro não permite trabalhar com tempo!
Para solucionar o problema você deve fazer um delay utilizando Thread:
Exemplo:
public static void main(String ... args) {
//Abre o primeiro jFrame
try {
Thread.sleep(5000);//Isso criará um delay de 5 segundos
} catch (InterruptedException e) {
//Tratativa de exceção
}
//Abre o segundo jFrame
}
O que eu quis dizer é que, o uso de loop com variáveis independente de tipos (Integer, Double…) não atende ao problema, compreende ?
Não disse que seu código está incorreto ou que não funciona, somente não atende ao problema especificado, pois a necessidade é de se trabalhar com tempo e não com valores.
Sim, compreendo. Beleza, achei sofisticada sua resposta. Vlw! Mas o cara deve estar começando os estudos em Java, o loop - passando um valor suficiente por parâmetro - será o necessário. De qualquer forma, é bom agregar conhecimento e sua resposta foi legal.
esquece consegui resolver na verdade mais a baixo do meu código o próprio netbeans estava abrindo o Jframe, então coloquei este código de baixo dele.
Ficou assim:
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new TelaInicial().setVisible(true);
}
});
try {
Thread.sleep(5000);//Isso criará um delay de 5 segundos
} catch (InterruptedException e) {
//Tratativa de exceção
}
TelaLogin primeiro = new TelaLogin();
primeiro.setVisible(true);
}