Identificar o CAPSLOCK ativo e avisar ao usuário

25/04/2017

0

Como faço para identificar se o CAPSLOCK está ativo e informar ao usuário no momento de digitar sua senha para autenticação no sistema que estou desenvolvendo.
Edson Sobrinho

Edson Sobrinho

Responder

Posts

26/04/2017

Edson Sobrinho

pessoal, alguem me ajuda ai. Só falta isso pra terminar e eu to enroladão. Já pesquisei na net e usei Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK) mas nao ta funcionando.
Responder

27/04/2017

Edson Sobrinho

Achei a solução e tô compartilhando pra quem quiser:
public class TestaCapsOnSwing extends JFrame {  
  
    /** 
     *  
     */  
    private static final long serialVersionUID = 1L;  
  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        EventQueue.invokeLater(new Runnable() {  
            public void run() {  
                try {  
                    TestaCapsOnSwing frame = new TestaCapsOnSwing();  
                    frame.setVisible(true);  
                } catch (Exception e) {  
                    e.printStackTrace();  
                }  
            }  
  
        });  
    }  
  
    public TestaCapsOnSwing() {  
        setTitle("Testa Caps Lock"<img src="http://javafree.uol.com.br/forum/images/smiles/icon_wink.gif">;  
        setBounds(100, 100, 200, 100);  
        setLayout(new BorderLayout());  
        JTextField teste = new JTextField();  
        final JLabel msg = new JLabel("CAPS LOCK ESTÁ ATIVADA"<img src="http://javafree.uol.com.br/forum/images/smiles/icon_wink.gif">;  
        msg.setVisible(false);  
        teste.addKeyListener(new KeyListener() {  
  
            @Override  
            public void keyTyped(KeyEvent arg0) {  
                // TODO Auto-generated method stub  
  
            }  
  
            @Override  
            public void keyReleased(KeyEvent arg0) {  
                // TODO Auto-generated method stub  
  
            }  
  
            @Override  
            public void keyPressed(KeyEvent arg0) {  
                if (Toolkit.getDefaultToolkit().getLockingKeyState(  
                        java.awt.event.KeyEvent.VK_CAPS_LOCK)) {  
                    msg.setVisible(true);  
                } else {  
                    msg.setVisible(false);  
                }  
            }  
        });  
        getContentPane().add(teste, BorderLayout.NORTH);  
        getContentPane().add(msg, BorderLayout.CENTER);  
    }  
  
} 
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar