Fechar uma jdiaglo pressionando a tecla ESC - RESOLVIDO

2 respostas
W

Galera, já procurei em tudo quanto é canto e não consegui encontrar. Meu problema é simples, mas não tenho muito conhecimento na área, então encontrei alguns
códigos que dizem que funcionam pra fechar uma janela usando a tecla ‘ESC’.
O problema é que não faço a mínima ideia de onde colocar esse código e nem como acioná-lo. Se alguém puder me dizer como faço isso ajuda aí.
O código é este:

ActionListener actionListener = new ActionListener()
    {
        @Override
        public void actionPerformed(ActionEvent actionEvent)
        {
            setVisible(false);
        }
    };

    @Override
    protected JRootPane createRootPane()
    {
        KeyStroke stroke = KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0);
        JRootPane rootPane = new JRootPane();
        rootPane.registerKeyboardAction(actionListener, stroke, JComponent.WHEN_IN_FOCUSED_WINDOW);
        return rootPane;
    }

2 Respostas

AndreSorge

Wagner Junio, Boa Tarde!

Então, esse código deve ser colocado na ação de “apertar” o botão qualquer botão, sendo assim, será verificado se o botão apertado é a tecla ESC, se for, ele fecha a janela se não for, mantém aberto.

entendeu?

W

Consegui resolver com outro código que achei na internet, e não precisa pressionar nenhum botão. Com esse código, em qualquer momento, pressionando a tecla ESC o JDialog se fecha.
segue o link pra quem precisar:

http://www.java2s.com/Code/JavaAPI/javax.swing/extendsJDialogPressEscapeKeytocloseadialog.htm

Valeu pela atenção.

Criado 31 de março de 2013
Ultima resposta 2 de abr. de 2013
Respostas 2
Participantes 2