Bom dia/tarde/noite/madrugada a todos
estou desenvolvendo uma rotina para otimizar o uso do teclado na aplicação… como usar enter como tab, ativar jbuttons com enter… etc… pois com o traversalkeys eu nao consegui muita flexibilidade…
porém… eu queria fazer essas implementações num form pai… exemplo: FormCadCLientes extends FormPadraoEdicao
a forma como eu fiz funcionou… porém tenho que implementar em todas as classes, queria otimizar isso… alguma dica ? Obrigado
Component[] comp = this.getContentPane().getComponents();
for (int x = 0; x < comp.length; x++) {
final Component a = comp[x];
final int indice = x;
final String nomeclass = comp[x].getClass().getName();
comp[x].addKeyListener(new java.awt.event.KeyAdapter() {
@Override
public void keyPressed(java.awt.event.KeyEvent evt) {
enterKeyListener(evt, indice, nomeclass);
}
});
}
private void enterKeyListener(java.awt.event.KeyEvent evt, int indice, String nomeclass) {
if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
if (nomeclass.equals("javax.swing.JButton")) {
((javax.swing.JButton) this.getContentPane().getComponent(indice)).doClick();
}
if (nomeclass.equals("javax.swing.JTextField")) {
((javax.swing.JTextField) this.getContentPane().getComponent(indice)).transferFocus();
}
}
}