Ao iniciar minha Aplicação inicia-se com duas janelas Abertas, como Resolver?

3 respostas Resolvido
java
G

Olá pessoal, tudo bom, sou meio que novo no java e estou com uma dificuldade no meu código. A aplicação inicia numa boa porém ela abre com duas telas, alguém sabe me dizer o quer eu posso estar fazendo de errado?
O código é este:
Classe Principal

package wikigreja;

import wikigreja.Views.TelaSplash;

public class WikIGreja {

    
    public static void main(String[] args) {
        
        TelaSplash tela = new TelaSplash();
        tela.setVisible(true);
    } 
}

Tela Splash:

private Timer t;
    private ActionListener al; 

   
    public TelaSplash() {
        initComponents();
        al= new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
               if(BarraProgresso.getValue() < 100){
                   BarraProgresso.setValue(BarraProgresso.getValue() + 2);
               }
                else{
                   t.stop();
               } 
               if(BarraProgresso.getValue() == 100){
                   Verificar veri = new Verificar();
                   veri.autenticar();
                   dispose();
               } 
               if(BarraProgresso.getValue() == 20){
                  TextoBarraProgresso.setText("Conectando a Base de Dados");
               }
               if(BarraProgresso.getValue() == 40){
                   TextoBarraProgresso.setText("Verificando Inconsistências");
               }
               if(BarraProgresso.getValue() == 60){
                   TextoBarraProgresso.setText("Reestabelecendo Dados");
               }
               if(BarraProgresso.getValue() == 80){
                   TextoBarraProgresso.setText("Configurando o Ambiente gráfico");
               }
                    
                
            }
        };
        t = new Timer(100,al);
        t.start();
       
    }

Método Verificar:

public class Verificar {
    
    public static boolean verif;
    
    public void autenticar(){
         String sql = "SELECT * FROM CONFIGURACAO";
         Connection con = null;
         
         con = Conexao.getConexao();
         PreparedStatement stmt = null;
         ResultSet rs = null;
         
         try{
             stmt = con.prepareStatement(sql);
             rs = stmt.executeQuery();
             rs.next();
             
              verif = rs.getBoolean("PedirSenha");
              
              if(verif == true){
                  TelaLogin tl = new TelaLogin();
                  tl.setVisible(true);
              }
              else{
                  TelaPrincipal TP = new TelaPrincipal();
                  TP.setVisible(true);
                  
              }
         }
         catch(SQLException e){
             JOptionPane.showMessageDialog(null,"Deu Ruin" + e);
         }
         finally{
             Conexao.FecharConexao(con, stmt);
         } 
    }
}

Desde já agradeço qualquer ajuda.

3 Respostas

rodriguesabner

Qual JFrame está abrindo duas vezes?

G

Com exceção da tela Splash qualquer outra

rodriguesabner
Solucao aceita

tenta chamar alguma tela sem ser através dessa Splash. Cria uma classe/jframe chame através deste.

Não precisa colocar as condições, só chama a tela

Criado 17 de fevereiro de 2019
Ultima resposta 17 de fev. de 2019
Respostas 3
Participantes 2