Alguem pode me ajudar com a minha tela de login

3 respostas
S

bom pessoal sou novo no java, gostaria que alguem me ajudase com a minha tela de login e o seguinte eu estou usando jTextFild para entrar com o usuario e JPasswordFild para a senha… e que eu gostaria que quando eu digitar o usuario e a senha… o meu codigo pegase o nome do usuario e senha de TextFild e comparase com uma senha que eu defino e fechar e chamar uma outra tela. estou mandando o codigo para que vcs ajuste para mim por favor…

3 Respostas

J

Sanches,

[email removido] esqueceu de mandar o código. mas posso te ajudar. Antes quero te fazer uma pergunta: vc está com a documentação do Java? Se não baixe logo. É impraticável programar sem ter a documentação. Espero que seu ingles seja razoável (o meu também não é bom) porque não tem tradução. Mas dá para desenrolar. enfim, oq ue você de ve fazer é usar a sua aplicação sendo do tipo MVC (model view controler) Quer dizer vc vai tornar separado a visão do modelo de dados e da parte de controles. Quando vc for usar tanto o jtextfield como o jpasswordfield vc deve setar em cada um deles um PlainDocument (olha na documentação). daí a a partir deste document vc manipula os dados. Então vc faria assim:

Criaria uma classe onde seria seu modelo. Assim lá teria dois Plain document. um para o text field e outro para o passwordfield. uma nnuma outra classe vc cria a tela (visão) e no construtor vc passa esse classe modelo criada como parametro. Daí a a partir dela v c seta os documents nos fields. E o botão não tem modelo, no caso ele teria uma ação que corresponde o controller do mvc. daí vcd cria uma classe que extende abstractaction e descreve o que esse botão vai fazer no método actionperformed. Daí para que vc tenha acesso aos dados vc vai colocar no construtor da action o modelo como parametro.

No caso da troca de tela só é vc usar o gerenciador de layout CardLayout. ele permite que vc tenha várias telas e em cada momento dizer qual vai aparecer. Olha a documentação que dá para ter uma idéia. Se não entendeu me diz que te mando um exemplo.

Abraços,

J

Mas se você não quiser complicar muito por enquanto, é só pegar os valores e comparar, aí se forem iguais você abre a outra tela.

public class telaLogin extends JFrame implements ActionListener{
  private JTextField nome = new JTextField(10);
  private JPasswordField senha = new JPasswordField():
  private JButton entrar = JButton("Entrar");

  private usu = "nomedousuario";
  private pass = "senhadousuario";

  public telaLogin(){
   add(nome);
   add(senha);
   
  entrar.addActionListener(this);
  add(entrar);

  public void actionPerformed(ActionEvent evt){
       if(usu.equals(nome.getText())&&pass.equals(new String(senha.getPassword()))){
         TelaPrincipal principal = new TelaPrincipal();
         principal.setVisible(true);

        this.setVisible(false);
        this.dispose();
      }
  }
}
S

valeu galera deu certo muito obrigado…

Criado 22 de junho de 2005
Ultima resposta 24 de jun. de 2005
Respostas 3
Participantes 3