ola,
estou a varias horas fazendo pesquisas no guj mas nao achei uma resposta
esse codigo funciona
public void keyTyped(KeyEvent e) {
e.consume();
}
mas quando eu adiciona esta instrucao if nao funciona
public void keyTyped(KeyEvent e) {
if(e.getKeyCode() == 107){
e.consume();
}
}
sera que e pq “e.getKeyCode()” nao esta retornando nehum valor ?
alias “e.setKeyCode(13)” tb nao funciona
se alguem puder me ajudar ficarei grato !!!
e.getKeyCode retorna uma constante da classe KeyEvent. Algo como:
public void keyTyped(KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_ESCAPE){
System.exit(0);
}
}
[quote=marcobiscaro2112]e.getKeyCode retorna uma constante da classe KeyEvent. Algo como:
public void keyTyped(KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_ESCAPE){
System.exit(0);
}
}
[/quote]
eu fiz o teste e
mesmo assim nao esta funcionando
a outra coisa quando eu digito
o mesmo codigo no keyPressed funciona
menos o “e.consume” pq no keyPressed a tecla ja foi executada
alguem pode me ajudar?
Você adicionou o listener corretamente? Por exemplo:
JFrame janela = new JFrame("Teste");
janela.setBounds(50, 50, 300, 300);
janela.addKeyListener(this); // você fez algo como isso??
janela.setVisible(true);
[quote=marcobiscaro2112]Você adicionou o listener corretamente? Por exemplo:
JFrame janela = new JFrame("Teste");
janela.setBounds(50, 50, 300, 300);
janela.addKeyListener(this); // você fez algo como isso??
janela.setVisible(true);
[/quote]
Sim ja add esse codigo
por ex. seu e coloco
System.exit(0);
funciona
mas seu eu coloco
if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
System.exit(0);
}
ai ja nao funciona
Documentação da classe KeyEvent:
[quote=marcobiscaro2112]Documentação da classe KeyEvent:
[quote]
getKeyCode
public int getKeyCode()
Returns the integer keyCode associated with the key in this event.
Returns:
the integer code for an actual key on the keyboard. ([b][i]For KEY_TYPED events, the keyCode is VK_UNDEFINED.[/i][/b])
[/quote][/quote]
sim retorna um inteiro mas mas mesmo colocando o codigo da tecla nao funciona
Você não entendeu o que quis dizer: quando é um evento do tipo KEY_TYPED SEMPRE retorna VK_UNDEFINED. Não vai dar para fazer comparações com o valor da tecla nos métodos keyTyped (só em kryPressed e em keyReleased).
ah ta foi mal
mas intao como faço pra saber que tecla que foi pressionada antes
de ela realizar sua funcao ?
consegui finalmente !!!
if (e.getKeyChar() == (char) 43) {
e.consume();
if (ValidaValor()) {
ExecOperacoes("adicao");
}
}
vlw pela ajuda.