Qual seria o erro do meu código?

2 respostas
Beltway
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        String usuario = "Admin";
        String senha = "aaaa";
        
        if(jPasswordField1.getPassword().equals("aaaa") && jTextField1.getText().equals("Admin")){
            
            JOptionPane.showMessageDialog(null,"Você está dentro!");
            
        }
    }

Bom dia pessoal,
estava criando um sistema de login basico quando me deparei com um problema, eu escrevia a senha certa e o login certo, mas não "logava", então decidi vir aqui.
Obrigado desde ja,

Beltway.

2 Respostas

E
.... jPasswordField1.getPassword().equals("aaaa") ....

getPassword() retorna um char[], não uma String. Você teria de usar algo como:

.... new String (jPasswordField1.getPassword()).equals ("aaaa") ....
gilmar.g

Olá, Boa Noite.

Há pouco tempo fiz uma telinha de login com verificação instantânea, bem legal. Utilizei o método getText() do campo password, funciona perfeitamente. Pode não ser a melhor maneira, mas no 'embalo' das comparações acima..... Dá uma olhada no exemplo:
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

@SuppressWarnings("serial")
public class Test extends JFrame {

	private JPanel contentPane;
	private JTextField login = new JTextField();;
	private JPasswordField pw = new JPasswordField();
	private JButton btn_ok = new JButton("ok");
	private JPanel panel = new JPanel();
	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Test frame = new Test();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Test() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 182, 181);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
		
		contentPane.add(panel, BorderLayout.CENTER);
		panel.setLayout(null);
		
		login.setBounds(28, 36, 86, 20);
		panel.add(login);
		login.setColumns(10);
		
		pw.setBounds(28, 78, 86, 20);
		panel.add(pw);
		btn_ok.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				if ((pw.getText().equals("aaaa")) && login.getText().equals("Admin")) {
					JOptionPane.showMessageDialog(null, "Yeah! Você Está Dentro");
				}
			}
		});
		
		btn_ok.setBounds(23, 109, 91, 23);
		panel.add(btn_ok);
	}
}
Criado 30 de abril de 2012
Ultima resposta 30 de abr. de 2012
Respostas 2
Participantes 3