Ver Mensaje Individual
  #3  
Antiguo 11-02-2010
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Reputación: 24
sur-se Va por buen camino
Hola. Gracias por la respuesta, pero no tiene nada que ver con el TabStop. Si yo pongo el TabStop a false, no entra en los saltos de la tabulación, pero si podría con el ratón entrar en el campo y eso es lo que no quiero.
Básicamente es más parecido a la propiedad enabled, de forma que si deshabilito el campo con esa propiedad, ya no me deja entrar.
El tema está en que no puedo utilizar la propiedad Enabled porque me salta el campo siguiente. Te pongo un ejemplo y quizas puedas darme una solución mejor:
- Pongo tres edits en pantalla en secuencia con el TabStop a true.
- El segundo edit lo pongo enabled:=false
- En el primer edit, programo el evento OnExit de forma que si el valor del text vale, por ejemplo, "S", entonces que habilite el segundo edit, y si no que se quede deshabilitado.
- Ejecuta la aplicación y ponte en el primer edit. Escribe "S" y luego dale al tabulador. En lugar de irse al segundo edit, que he habilitado en el onexit al comprobar el valor del campo, se va al tercer edit, cuando el segundo está habilitado, pero se lo salta.
Este es el problema que quiero solucionar. A ver si me puedes dar una solución mejor. Lo que yo he hecho es poner una propiedad "Accesible" que se pone a true o false, y en el DoEnter si la propiedad es false, entonces mando el foco al siguiente campo con el PostMessage. El único problema que tiene esta solución es que si voy para atrás (shift+tab) cuando llego a ese campo no accesible, como no se si iba hacia adelante o hacia atrás, no se si debo ejecutar el PostMessage con 0 o con 1 como parámetro para ir adelante o atrás. Y ese era el objeto de la pregunta.
Un saludo
Responder Con Cita