Buscar

Componente JPasswordField em formulários

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
Aula 10 JMenuBar / JMenu 
 
 
JPasswordField 
 
Em formulários que necessitam de caixa de texto para digitar senhas, podemos aplicar o 
componente definido pela classe JPasswordField. 
 
O conteúdo digitado na caixa de texto gerado pelo componente da classe JPasswordField 
não é apresentado ao usuário. 
 
JPasswordField (uma subclasse direta de JTextField), você pode suprimir a exibição de entrada. 
 
Cada caracter introduzido pode ser substituído por um caractere de eco. 
 
Isto permite a entrada confidencial para senhas, por exemplo. Por padrão, o caracter eco é o 
asterisco *. 
 
Exemplo 1: 
 
 
package programas; 
 
import java.awt.Container; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JOptionPane; 
import javax.swing.JPasswordField; 
import javax.swing.JTextField; 
 
public class ExemploPassword1 extends JFrame { 
 private JLabel lblUsuario; 
 private JLabel lblSenha; 
 private JTextField txtUsuario; 
 private JButton btLogin; 
2 
 
 private JPasswordField password; 
 static String SENHA = "123"; 
 String senhaDigitada = null; 
 
 ExemploPassword1() { 
 super("Testando Password"); 
 } 
 public void montaTela() { 
 Container c = getContentPane(); 
 setLayout(null); 
 
 lblUsuario = new JLabel("Usuário: "); 
 lblUsuario.setBounds(50, 50, 65, 25); 
 txtUsuario = new JTextField(); 
 txtUsuario.setBounds(110, 50, 70, 25); 
 
 lblSenha = new JLabel("Senha: "); 
 lblSenha.setBounds(50, 80, 65, 25); 
 
 btLogin = new JButton("Login"); 
 btLogin.setBounds(130, 130, 65, 25); 
 
 password = new JPasswordField(); 
 password.setEchoChar('.'); 
 password.setBounds(110, 80, 100, 25); 
 
 c.add(lblUsuario); 
 c.add(txtUsuario); 
 c.add(lblSenha); 
 c.add(password); 
 c.add(btLogin); 
 btLogin.addActionListener(new ValidaSenha()); 
 
 setSize(350, 250); 
 setVisible(true); 
 setLocationRelativeTo(null); // centraliza a janela na tela 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
 } 
 public class ValidaSenha implements ActionListener { 
 
 @Override 
 public void actionPerformed(ActionEvent e) { 
 senhaDigitada = new String(password.getPassword()); 
 if (SENHA.equals(senhaDigitada)) { 
 JOptionPane.showMessageDialog(null, "Senha Correta!"); 
 } else { 
 JOptionPane.showMessageDialog(null, "Senha Incorreta!"); 
 } 
 } 
 } 
 public static void main(String[] args) { 
 ExemploPassword1 xx = new ExemploPassword1(); 
 xx.montaTela(); 
 } 
} 
3 
 
 
Exemplo 2: 
 
 
 
 
 
 
package programas; 
 
import java.awt.Container; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JOptionPane; 
import javax.swing.JPasswordField; 
import javax.swing.JTextField; 
 
public class ExemploPassword2 extends JFrame { 
 private JLabel lblSistemaFinanceiro; 
 private JLabel lblUsuario; 
4 
 
 private JLabel lblSenha; 
 private JTextField txtUsuario; 
 private JButton btLogin; 
 private JPasswordField password; 
 static String SENHA = "123"; 
 String senhaDigitada = null; 
 
 ExemploPassword2() { 
 super("Testando Password"); 
 } 
 public void montaTelaSenha() { 
 Container c = getContentPane(); 
 setLayout(null); 
 
 lblSistemaFinanceiro = new JLabel("Sistema Financeiro"); 
 lblSistemaFinanceiro.setBounds(90, 5, 150, 60); 
 
 lblUsuario = new JLabel("Usuário: "); 
 lblUsuario.setBounds(50, 50, 65, 25); 
 txtUsuario = new JTextField(); 
 txtUsuario.setBounds(110, 50, 70, 25); 
 
 lblSenha = new JLabel("Senha: "); 
 lblSenha.setBounds(50, 80, 65, 25); 
 
 btLogin = new JButton("Login"); 
 btLogin.setBounds(130, 130, 65, 25); 
 
 password = new JPasswordField(); 
 password.setEchoChar('*'); 
 password.setBounds(110, 80, 100, 25); 
 
 c.add(lblSistemaFinanceiro); 
 c.add(lblUsuario); 
 c.add(txtUsuario); 
 c.add(lblSenha); 
 c.add(password); 
 c.add(btLogin); 
 btLogin.addActionListener(new TrataSenha()); 
 
 setSize(350, 250); 
 setVisible(true); 
 setLocationRelativeTo(null); // centraliza a janela na tela 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
 } 
 public class TrataSenha implements ActionListener { 
 @Override 
 public void actionPerformed(ActionEvent e) { 
 senhaDigitada = new String(password.getPassword()); 
 if (SENHA.equals(senhaDigitada)) { 
 SistemaFinanceiro sf = new SistemaFinanceiro(); 
 sf.montaTelaMenu(); 
 } else { 
 JOptionPane.showMessageDialog(null, "Senha Incorreta!"); 
 } 
5 
 
 } 
 } 
 
 public static void main(String[] args) { 
 ExemploPassword2 exe = new ExemploPassword2(); 
 exe.montaTelaSenha(); 
 } 
} 
 
 
package programas; 
 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JFrame; 
import javax.swing.JMenu; 
import javax.swing.JMenuBar; 
import javax.swing.JMenuItem; 
import javax.swing.JSeparator; 
 
public class SistemaFinanceiro extends JFrame { 
 
 JMenuBar menuBar; 
 JMenu menuCliente; 
 JMenuItem menuItemClienteIncluir; 
 JMenuItem menuItemClienteSair; 
 JSeparator separador; 
 
 public SistemaFinanceiro() { 
 super("Sistema Finaceiro"); 
 //setSize(300,200); 
 setVisible(true); 
 setExtendedState(JFrame.MAXIMIZED_BOTH); // Executa maximizado 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
 } 
 
 public void montaTelaMenu() { 
 menuBar = new JMenuBar(); 
 setJMenuBar(menuBar); 
 separador = new JSeparator(); 
 
 menuCliente = new JMenu("Cliente"); 
 menuItemClienteIncluir = new JMenuItem("Incluir"); 
 menuItemClienteSair = new JMenuItem("Sair"); 
 
 menuBar.add(menuCliente); 
 menuCliente.add(menuItemClienteIncluir); 
 menuCliente.add(separador); 
 menuCliente.add(menuItemClienteSair); 
 menuItemClienteSair.addActionListener(new Sair()); 
 } 
 
 public class Sair implements ActionListener { 
 
 @Override 
6 
 
 public void actionPerformed(ActionEvent e) { 
 System.exit(0); 
 setDefaultCloseOperation(EXIT_ON_CLOSE); 
 } 
 } 
 public static void main(String[] args) { 
 SistemaFinanceiro exemplo = new SistemaFinanceiro(); 
 exemplo.montaTelaMenu(); 
 } 
} 
 
 
Exemplo 3: 
 
 
 
 
 
 
 
package programas; 
 
import javax.swing.JOptionPane; 
 
public class ExemploPassword3 { 
 public float vlrSaque; 
 
 public void pegaDadosVenda() { 
 vlrSaque = (Float.parseFloat(JOptionPane.showInputDialog(null,"Digite Valor do Saque: "))); 
 ValidaSenha val = new ValidaSenha(); 
 val.validadorDeSenha(); 
 JOptionPane.showMessageDialog(null, "Saque Efetuado! " + 
vlrSaque); 
 } 
 
 public static void main(String[] args) { 
 ExemploPassword3 v = new ExemploPassword3(); 
 v.pegaDadosVenda(); 
 } 
} 
7 
 
 
package programas; 
 
import javax.swing.JLabel; 
import javax.swing.JOptionPane; 
import javax.swing.JPanel; 
import javax.swing.JPasswordField; 
 
public class ValidaSenha { 
 
 private JPanel painel; 
 private JLabel lblLabel; 
 private JPasswordField password; 
 static String SENHA = "123"; 
 String senhaDigitada = null; 
 
 ValidaSenha() { 
 } 
 
 public void validadorDeSenha() { 
 
 // Cria campo onde o usuario entra com a senha 
 password = new JPasswordField(10); 
 password.setEchoChar('#'); 
 
 // Cria um rótulo para o campo 
 lblLabel = new JLabel("Digite a Senha:"); 
 
 // Coloca o rótulo e a caixa de entrada numa JPanel: 
 painel = new JPanel(); 
 painel.add(lblLabel); 
 painel.add(password); 
 
 // Mostra o rótulo e a caixa de entrada de password para o 
usuario fornecer a senha: 
 JOptionPane.showMessageDialog(null, painel, "Valida Senha", 
JOptionPane.PLAIN_MESSAGE); 
 senhaDigitada = password.getText(); 
 
 int ctrlSenhaDigitada = 0; 
 while (ctrlSenhaDigitada == 0) { 
 if (SENHA.equals(senhaDigitada)) { 
 ctrlSenhaDigitada = 1; 
 } else { 
 JOptionPane.showMessageDialog(null, "Senha Incorreta!"); 
 password.setText(""); 
 JOptionPane.showMessageDialog(null, painel, "Valida 
Senha", JOptionPane.PLAIN_MESSAGE); 
 senhaDigitada = password.getText(); 
 } 
 } 
 } 
} 
 
 
8 
 
Exercícios: 
 
1 – De acordo com o exemplo 3, implementar uma transferência para uma conta poupança e a 
impressão de extrato. Todos deverão ser executados somente com a senha validada.

Continue navegando