Boa noite pessoal.
Desde ontem estou pesquisando e fuçando, e não consigo esta resposta.
O caso é o seguinte, tenho dois JFrames em minha aplicação, um de login e um principal.
Quando executo meu projeto, de cara o principal é carregado, mas o de login não, e o que eu quero, na verdade é o inverso disso. Primeiro o de login, e depois o principal.
Como que eu posso alterar esta ordem de aparição?
Por favor me deem uma luz.
Obrigado e boa noite.
É só alterar a ordem do setVisible.
De qualquer forma, se você vai mostrar o JFrame principal com o login na frente, a janela de login deveria ser um JDialog modal e não um JFrame.
Acredito que a sua classe Principal é que esteja definida como executável em seu arquivo manifest. O artigo abaixo pode te ajudar:
http://www.guj.com.br/articles/42
Você usa alguma IDE para desevolver? Se for o NetBeans, clique com o botão direito no projeto -> Propriedades -> Executar -> Classe Principal: escolha o Login.
E ah, concordo com o Vini, login deve ser um dialog modal.
Obrigado ViniGodoy, vou dar uma pesquisada aqui e ver se entendo melhor. Como meu status diz sou um “What is a classpath?”, então não entendo muito.
E Bruno M Gasparotto, isso que você me aconcelhou era tudo que eu precisava. Resolveu meu problema.
A minha idéia é a de o usuário fazer login, e só após isso, fechar o jframe de login, e mostrar o jframe principal com todas as informações e menus. Não mostrar os dois jFrames de uma só vez.
Mesmo assim o certo é usar jDialogModal?
Aí pode ser dois JFrames mesmo.
No caso, basta abrir só o JFrame a partir da tela de login. E, no evento de botão, validar a senha, fechar o frame da senha e abrir o outro JFrame, se for o caso.
Dar o comando de dispose() em “this” não impede que os demais comandos sejam executados.
Hum, eu geralmente uso um JDialog mas com essa implementação de validar no evento do botão.
É ViniGodoy, estou fazendo desta forma mesmo.
Muito obrigado a vocês dois.
Resolveram minha dúvida.