Dúvida para criar atalho no Java

10 respostas Resolvido
programaçãojava
L

Olá galera, boa tarde!

Sou novo em programação e estou com uma dúvida, estou fazendo um sistema de vendas e gostaria que ao apertar F1 puxasse o foco para tal Label, porem eu só consigo fazer isso se estiver com o foco em algum campo.

Gostaria de saber como faço para que funcione tecla de atalho em qualquer lugar que esteja selecionado.
OBS: Pensei em colocar no painel mas sem sucesso.

if (evt.getKeyCode() == evt.VK_ENTER) {
        JDialogProdutos.setVisible(true);
        System.out.println("TESTE");

    }

Conto com ajuda de vocês galera, obrigado.

10 Respostas

V

Como assim puxar foco para um Label?
O que você esta chamando de foco é o cursor?
Não seria puxar o foco para um textField?

L

Isso Vinicius, puxar o foco para textField, isso não é o problema, o problema mesmo é fazer com quem o atalho funcione. Não sei se deu muito bem para entender kkkk

V

https://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html

VK_ENTER seta o atalho para a tecla enter.
Para setar a o atalho para a tecla F1 é VK_F1.
No link acima tem uma lista dos botões e o seus KeyEvent.

L

Certo Vinicius, até ai eu consegui fazer, agora como faço pra chamar o atalho por exemplo se eu tiver na tela, queria chamar ele sem ter nada selecionado, por exemplo: Se o foco estiver em um textfield eu consigo chamar o atalho, agora caso nao esteja eu nao consigo.

V
Solucao aceita

Achei isso daqui.

L

Vinicius sou bem leigo em programação, nesse tópico que me mandou eu vi que tem um implementes na classe, seria criar uma classe com aqueles métodos e chama-la na tela em que eu vou usar os atalhos?

V

Do mesmo jeito que você criou um classe que extend ao Jframe você cria uma classe que extend ao Jpanel, dai você chama essa classe.
É basicamente fazer o que ta lá mesmo.

L

Entendi Vinicius, só que eu estava vendo isso só vai funcionar se o painel estiver selecionado certo? Se eu selecionar algum outro componente na tela não ira funcionar, correto?

V

Se o componente tiver dentro do Jpanel provavelmente irá funcionar.

L

Vinicius consegui fazer, deu certo com esse método que você me passou, obrigado.

Criado 19 de março de 2018
Ultima resposta 20 de mar. de 2018
Respostas 10
Participantes 2