cambiar comportamiento de Enter en Jtable java
Hola que tal tengo uun problema y no se como solucionarlo, tengo una jtable donde muestro el contnido de una tabla de una bd, y quiero pasarlo a un jtable pero usando acelerador de teclado ose con planar f5, o f3, o con un enter
si logro pasarlo pero usando o aplicando el metodo mouseclick
lo que pasa el comportamiento del enter en un jtable hace que se desplase la selecion a la siguiente fila y eso no es lo que quiero quiero que el foco quede ahi mismo y que donde se aplico el enter seria que esos datos pasaran a unos jtexfield que tengo
codigo pasa sacar los datos de la selecion asiendo click
private void AceptarMouseClicked(java.awt.event.MouseEvent evt) {
int fila = CatalogoPan.rowAtPoint(evt.getPoint());
int columna = CatalogoPan.columnAtPoint(evt.getPoint());
if ((fila > -1) && (columna > -1)) {
this.codbarrar = String.valueOf(CatalogoPan.getValueAt(fila, 0).toString().trim());
}
//this.dispose();
}
con este codigo saco nomas el codigo de barrra de un producto y lo paso a otro formulario
| codigoBarra | descripcion | precio|
|0001 | aceite | 19.50 |
|0002 | leche | 12.50 |
donde ago una busqueda automatico y me muestra la consulta
esto si me funciona pero tengo que ocupar el mouseclicked, pero eso ami no me gusta porque se pierde tiempo pues hay que usar el maus y planar una un boton para que pase l dato selcionado
aver si alguien me puede echar la mano
o sino que me diga como puedo evitar que el enter no se comporte como tecla de navegacion
- Inicie sesión o regístrese para enviar comentarios
Lo que necesitas es, así como
Lo que necesitas es, así como creaste tu método que acepta un
, crear otro que acepte un
, y según la tecla que se presione, ejecutar una acción (en éste caso es el Enter que quieres)
Acá te dejo la liga para que cheques cómo escribir escuchadores de eventos de teclado, y acá el API para que cheques qué constante le corresponde a la tecla Enter (VK_ENTER).
podrías tratar lo siguiente.
myTabla.getInputMap(JTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0,false), "selectColumnCell");