Optimizar busqueda incremental visual foxpor

Hola amigos, espero estén todos bien.
Yo trabajo en visual foxpro 8 y 9 miren yo realice un búsqueda incremental y me funciona super bien, donde el form tiene un text1 y un listbox donde al ir ingresando en el text1 carácter por carácter me va mostrando el resultado de coincidencia en el listbox,
Ahora lo que quiero es optimizarlo.
Ejemplo
En el text1 al pulsar fecha abajo, en el lostfocus de este
pregunto :
if lastkey()=24 .and. Thisform.list1.visible=.t.
thisform.list1.setfocus && paso el foco al list1
endif
nota si listbox esta visible es porque encontro coincidencia
en el listbox en el evento keypress pregunto
if nkeycode=24 ,or. Nkeycode=5
thisform.text1.setfocus && devuelvo el foco al text1
endif
me funciona casi parecido a visual foxpro, uno puede seguir escribiendo en el text1 y pude moverse por en list1, pero aun no me agrada, ya que cuando estoy en el list1 debo de pulsar 2 veces la fechas para que me de ese efecto, para que me entiendan mejor dentro de un componente o formulario escriban. .
Thisform.
Al colorcar el punto aparece una lista con las propiedades y ambos mantienen el foco la idea es no perder el foco en ninguno de los 2
Ahora alguien conoce alguna instrucción donde el componente activo por ejemplo el list1
me detecte que no esta trabajando. Y otra forma para lograrlo.
PD: Parece un detalle pequeño, pero la gran mayoría de los usuario están abituado al teclado les incomoda usar mucho el mouse, se también que es cosa de costumbre pero nosotros los programadores debemos de ponernos en todos los casos cosa de no dar cabida al usuario para sus reclamos.
Gracias
ACM

1 respuesta

Respuesta
1
Yo este caso lo había solucionando simulando la presión sobre la flecha abajo, es decir cuando presione la flecha abajo le vuelvo a presionar manualmente yo una vez más, así el usuario presiona 1 y el programa presiona otro y no se da cuenta, es un caso pecualiar del listbox que al recibir el enfoque no se selecciona la primera fila automáticamente si no al presiona flecha abajo, el comando para presionar una tecla seri así
keyboard '{dnarrow}'
Con esta sentencia le dije a fox que presione la flecha abajo.
Hola amigo
Después de haber pasado por varios foros y respuestas bagas más menos 2 meses, se nota que interpretaste muy bien mi pregunta, y le diste solución a mi problema.
Muchas gracias era justo lo que estaba buscando, gracias nuevamente amigo
ACM

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas