Problema com loguin com nivel

2 respostas
F

Galera,e que fiz a validação esta tudo certo.

O Problema e na hora do meu método Setenable que vou usar no jMenuItem9 que fiz não esta funcionando. de jeito nenhum

Aqui esta meu método de logar.

public Boolean login(String usuario, String senha) { 
     
    
  
  boolean existe = false;       
  Statement stm;       
          try {
              stm = conexao.createStatement();
              ResultSet rs = stm.executeQuery("SELECT perfil FROM usuario WHERE usuario.usuario = '" + usuario + "' AND senha = '" + senha + "' "); 
               if(rs.first()){ 
     // rs.getString("perfil");
      String resultado= rs.getString("perfil");
   
      if(resultado.equals("Usuario")){
           usuarioenable(usuario);  // aqui esta o método funciona a mensagem mas não o setenable
      
           jMenuItem9.setEnabled(false);
           
           System.out.print("Usuario");
        
  
      }else{
     
         
         System.out.print("Admin"); 
          
      }
      
    existe = true;     
    }else{
      
      System.out.print("Senha ou usuario incorreto"); 
      
  }      
        
 

          } catch (SQLException ex) {
              Logger.getLogger(OutraTela.class.getName()).log(Level.SEVERE, null, ex);
          }
          return existe;
 }
 
 public void usuarioenable(String nome){
     
    
    jMenuBar1.setEnabled(false);
    JOptionPane.showMessageDialog(null,"Usuario Logado Com Sucesso!" +nome);
    
 }
 }

E Aqui e meu botão

OutraTela v= new OutraTela();
     
           
               if (!(v.login(jTLoguin.getText(),jPasswordFieldSenha.getText()))) {  
                   JOptionPane.showMessageDialog(this,"O login/senha atual não confere.", "Validação" , JOptionPane.WARNING_MESSAGE);  
                   jPasswordFieldSenha.requestFocus();  
                   jPasswordFieldSenha.selectAll(); 
                 
              
                 return  ;
               }else{
                    JOptionPane.showMessageDialog(this, "Logado no Sistema","Validação", JOptionPane.WARNING_MESSAGE); 
              
                 new OutraTela().setVisible(true);
                    
               }

Preciso saber pq meu método não esta funcionado ,eu coloco depois do initcomponents funciona.

Ele ler a mensagem do método mas não funciona o setenable.

Se alguém puder me ajudar por favor.

2 Respostas

Luiz_Augusto_Prado

flavio56:
Galera,e que fiz a validação esta tudo certo.

O Problema e na hora do meu método Setenable que vou usar no jMenuItem9 que fiz não esta funcionando. de jeito nenhum

Aqui esta meu método de logar.

public Boolean login(String usuario, String senha) { 
     
    
  
  boolean existe = false;       
  Statement stm;       
          try {
              stm = conexao.createStatement();
              ResultSet rs = stm.executeQuery("SELECT perfil FROM usuario WHERE usuario.usuario = '" + usuario + "' AND senha = '" + senha + "' "); 
               if(rs.first()){ 
     // rs.getString("perfil");
      String resultado= rs.getString("perfil");
   
      if(resultado.equals("Usuario")){
           usuarioenable(usuario);  // aqui esta o método funciona a mensagem mas não o setenable
      
           jMenuItem9.setEnabled(false);
           
           System.out.print("Usuario");
        
  
      }else{
     
         
         System.out.print("Admin"); 
          
      }
      
    existe = true;     
    }else{
      
      System.out.print("Senha ou usuario incorreto"); 
      
  }      
        
 

          } catch (SQLException ex) {
              Logger.getLogger(OutraTela.class.getName()).log(Level.SEVERE, null, ex);
          }
          return existe;
 }
 
 public void usuarioenable(String nome){
     
    
    jMenuBar1.setEnabled(false);
    JOptionPane.showMessageDialog(null,"Usuario Logado Com Sucesso!" +nome);
    
 }
 }

E Aqui e meu botão

OutraTela v= new OutraTela();
     
           
               if (!(v.login(jTLoguin.getText(),jPasswordFieldSenha.getText()))) {  
                   JOptionPane.showMessageDialog(this,"O login/senha atual não confere.", "Validação" , JOptionPane.WARNING_MESSAGE);  
                   jPasswordFieldSenha.requestFocus();  
                   jPasswordFieldSenha.selectAll(); 
                 
              
                 return  ;
               }else{
                    JOptionPane.showMessageDialog(this, "Logado no Sistema","Validação", JOptionPane.WARNING_MESSAGE); 
              
                 new OutraTela().setVisible(true);
                    
               }

Preciso saber pq meu método não esta funcionado ,eu coloco depois do initcomponents funciona.

Ele ler a mensagem do método mas não funciona o setenable.

Se alguém puder me ajudar por favor.

Cara, só com isso não sei se vai ser suficiente pra lhe ajudar.
mas em que momento ele deveria ser setado true? o que tá dando de errado?

initcomponents é para instanciar e aplicar as propriedades iniciais de seu componente. Então, tudo o que fizer vai depender se a instância foi criada. Tem que ser depois de initcomponents mesmo.

JavaDreams

flavio56:
Galera,e que fiz a validação esta tudo certo.

O Problema e na hora do meu método Setenable que vou usar no jMenuItem9 que fiz não esta funcionando. de jeito nenhum

Aqui esta meu método de logar.

public Boolean login(String usuario, String senha) { 
     
    
  
  boolean existe = false;       
  Statement stm;       
          try {
              stm = conexao.createStatement();
              ResultSet rs = stm.executeQuery("SELECT perfil FROM usuario WHERE usuario.usuario = '" + usuario + "' AND senha = '" + senha + "' "); 
               if(rs.first()){ 
     // rs.getString("perfil");
      String resultado= rs.getString("perfil");
   
      if(resultado.equals("Usuario")){
           usuarioenable(usuario);  // aqui esta o método funciona a mensagem mas não o setenable
      
           jMenuItem9.setEnabled(false);
           
           System.out.print("Usuario");
        
  
      }else{
     
         
         System.out.print("Admin"); 
          
      }
      
    existe = true;     
    }else{
      
      System.out.print("Senha ou usuario incorreto"); 
      
  }      
        
 

          } catch (SQLException ex) {
              Logger.getLogger(OutraTela.class.getName()).log(Level.SEVERE, null, ex);
          }
          return existe;
 }
 
 public void usuarioenable(String nome){
     
    
    jMenuBar1.setEnabled(false);
    JOptionPane.showMessageDialog(null,"Usuario Logado Com Sucesso!" +nome);
    
 }
 }

E Aqui e meu botão

OutraTela v= new OutraTela();
     
           
               if (!(v.login(jTLoguin.getText(),jPasswordFieldSenha.getText()))) {  
                   JOptionPane.showMessageDialog(this,"O login/senha atual não confere.", "Validação" , JOptionPane.WARNING_MESSAGE);  
                   jPasswordFieldSenha.requestFocus();  
                   jPasswordFieldSenha.selectAll(); 
                 
              
                 return  ;
               }else{
                    JOptionPane.showMessageDialog(this, "Logado no Sistema","Validação", JOptionPane.WARNING_MESSAGE); 
              
                 new OutraTela().setVisible(true);
                    
               }

Preciso saber pq meu método não esta funcionado ,eu coloco depois do initcomponents funciona.

Ele ler a mensagem do método mas não funciona o setenable.

Se alguém puder me ajudar por favor.

Sempre tem que rodar o initComponents() primeiro
pois ele carrega toda a sua estrutura.

Se mesmo depois que fazer o que o Luiz
disse não der certo, tenta debugar para ver se
quando ele chega no set, se o botão já foi instanciado e carregado.

Abraço.

Criado 1 de agosto de 2013
Ultima resposta 21 de ago. de 2013
Respostas 2
Participantes 3