Autor |
Mensaje |
viejito
Usuario
Registrado: Diciembre 2014
Mensajes: 44
Edad: 61 Ubicación:
|
Uso De Enter Para Moverse Entre Campos De Un Formulario
Hola a todos!
Quisiera poder usar en mis programas algo que me resulta mas natural para avanzar o retroceder entre campos, por defecto se usa TAB, pero quisiera usar ENTER en su lugar. Existe algo que no sea codificado para lograr eso ?
Quisiera usar Escape para salir de la aplicación, si es que el usuario lo pulsa.
Sé que puedo programar algo similar pero me gustaría saber si existe algo mas fácil. Pero tengo la sensación de que no existe algo tan simple como eso.
Pensaba que una opción podría ser algo como el observer, pero tampoco observer me da buena espina.
Acepto ideas ...
|
#1 Sabado, 17 Enero 2015, 08:03 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Hola.
Puedes usar el evento KeyRelease del componente TextBox, por ejemplo:
Puedes usar Select Case dentro del evento, según la tecla pulsada que haga una acción.
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
|
#2 Sabado, 17 Enero 2015, 10:55 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Citar:
Puedes usar el evento KeyRelease del componente TextBox, por ejemplo:
Eso, aún siendo correcto, es un peñazo hacerlo por cada uno de los controles en cada uno de los formularios. gambas nos ofrece algo más sencillo y guay: La propagación de eventos. Así, los eventos de teclado del formulario Main se propagan a todos sus hijos. En otras palabras, el evento KeyRelease del formulario Main se propaga a todos los demás.
En el formulario Main:
Saludos.
|
#3 Sabado, 17 Enero 2015, 12:46 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Shordi:
Ok, se desplaza pero llega un momento que se acaba el siguiente control y da objeto nulo.
Si tienes un formulario con tres botones, tienes que saber cual es el ultimo para que empiece
por el primero de nuevo.
Imagina que pertenecen a un grupo de botones.
Por cierto si lo hago con el evento KeyRelease del Formulario no me cambia el foco de los botones.
Tengo que hacerlo con el del grupo de botones.
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
última edición por Shell el Sabado, 17 Enero 2015, 14:24; editado 2 veces
|
#4 Sabado, 17 Enero 2015, 14:18 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Una posible solución en el caso del grupo de tres botones. Puede que una solución "exclusiva"
He usado el nombre del ultimo botón.
Pero el control se podría haber llamado cualquier nombre.
Probare con Tag
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
|
#5 Sabado, 17 Enero 2015, 14:43 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Imagina que pertenecen a un grupo de botones.
...una posible solución también podría ser ésta:
Saludos
|
#6 Sabado, 17 Enero 2015, 16:46 |
|
|
viejito
Usuario
Registrado: Diciembre 2014
Mensajes: 44
Edad: 61 Ubicación:
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Lo siento, no cambia de control.
Pero seguro encontrare la razón. Debe ser algo muy obvio.
Tengo un tabstrip con 9 pestañas, en una de ellas había puesto un evento keypress, había hecho otra mas de esas mias, así que algo de eso debe ser.
|
#7 Sabado, 17 Enero 2015, 16:59 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Citar: Ok, se desplaza pero llega un momento que se acaba el siguiente control y da objeto nulo.
Ok. Sólo era una demo para ilustrar la idea. Si quieres un control mayor tienes que controlar más cosas.
En el caso del último, pues, controla que next no es nulo.
|
#8 Sabado, 17 Enero 2015, 17:03 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Lo siento, no cambia de control.
A cual codigo te refieres ?
|
#9 Sabado, 17 Enero 2015, 18:10 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Uso De Enter Para Moverse Entre Campos De Un Formulario
Viejito:
¿ Entonces quieres cambiar de pestaña al TabStrip al pulsar la tecla Enter ?.
¿ Algo como esto ?.
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
última edición por Shell el Sabado, 17 Enero 2015, 20:48; editado 2 veces
|
#10 Sabado, 17 Enero 2015, 20:30 |
|
|
|