FoxPro/Visual FoxPro - Bloqueo de LISTBOX

 
Vista:
sin imagen de perfil

Bloqueo de LISTBOX

Publicado por victor perez (278 intervenciones) el 12/09/2011 19:46:39
Hola,

Hace tiempo tengo un problema con uno de mis listbox.

El mismo se llena mediante un comando SELECT segun las clausulas que quiero.

En el listbox se muestran los campos deseados perfectamente para cada uno de los registros que cumplen con la condicion.

El problema esta es que llega el momento en que al querer seleccionar un registro del listbox no funciona con el mouse ...es decir , no puedo dirigir el focus hacia el listbox usando el mouse. Lo puedo hacer si me coloco en el listbox mediante las flechas...ademas para seleccionar no puedo usar el dobleclick sino que tengo que usar el enter.

Eso sucede en ocasiones...luego de haber consultado uno o dos registros del mismo SELECT hecho.

Vuelve a lo normal cuando salgo del form y lo vuelvo a correr.

Otro problema similar lo tengo con un Contenedor. Alimento el contenedor mediante un SELECT de los pacientes que se encuentran esperando para atencion en la SALA DE ESPERA.

Llega el momento en que puedo hacer el doble click o el enter sobre cualquier registro pero demora increiblemente para que se ejecute el evento. En este caso el evento lo que hace es tomar el codigo del paciente en la sala de espera y buscarlo en la base de datos de pacientes e inmediatamente abrir el form de pacientes que contiene varias pestañas (datos, contabilidad, Consultas, Busqueda).

Puede funcionar muchas veces pero llega el momento en que le pasa esto. El contenedor se actualiza mediante un Timer que corre un Metodo que incluye un SELECT-.

Esperando me puedan guiar en estos dos problemas, aun sin tener ustedes todos los codigos.

Gracias

Victor - Panama -
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Bloqueo de LISTBOX

Publicado por es_binario (757 intervenciones) el 12/09/2011 23:11:22
El problema podria encontrarse en el init del form, no tiene ningunca asociacion el listbox, es decir cuando se crea por primera vez no tiene ningun dato en el rowsource.

intenta poniendo la siguiente linea en el init del form suponiendo que el listbox se llame listbox1

This.listbox1.rowsource = ""


esto deberia solucionar el problema con las selecciones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Bloqueo de LISTBOX

Publicado por victor perez (278 intervenciones) el 12/09/2011 23:33:29
Gracias

Ya añadi la linea pero te cuento que el listbox se llena mediante un metodo llamado "filtro" que toma la variable "WHERE" en un SELECT del contenido de un textbox.

Supon que yo quiera ver los pacientes cuyo nombre contiene "VIC", el me lista todos los registros y yo escojo el que quiero....y me lleva a los datos del paciente, si regreso, en algunas ocasiones, al listbox ya no puedo escoger...es mas algunas veces aun colocando datos en otro textbox y haciendo la busqueda me permite usar el mouse para escoger...eso es lo extraño que es con el mouse, lo puedo hacer perfectamente si lo hago con las flechas y el enter.

Saludos,

ç
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Bloqueo de LISTBOX

Publicado por es_binario (757 intervenciones) el 13/09/2011 04:52:30
Tambien despues de cada select lleva un

Thisform.listbox1.refresh()


si usas foxpro 9 entonces necesitas el sp2 y las actualizaciones pertinentes esto nada mas lo he visto en windows 7
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Bloqueo de LISTBOX

Publicado por victor perez (278 intervenciones) el 15/09/2011 18:32:45
Hola Es_binario y foreros,

He seguido todas tus recomendaciones y el problema persiste.

Lo extraño es que uso la misma rutina para todos los forms que involucran AGREGAR y CONSULTAR...y solo me pasa en el form de Pacientes.

Ayer estuve observando detenidamente lo que sucede...

Es asi,

Abro el form y me voy a consutas. Introduzco por ejemplo "VIC" en el campo nombres, el listbox se llena inmediatamente con todos los registros que cumplan con la condicion de tener "VIC" en cualquier sección de la cadena.

Supongamos aparecen 30 registros...Me voy a cualquiera de ellos y hago doble click...esto inmediatamente carga la DATA al Page1 del FRAME del form... y me muestra todos los datos del paciente...inclusive, como el PAGEFRAME tiene 4 paginas..se carga la data en las otras pestañas como son HISTORIA CLINICA, DATOS CONTABLES...

Todo funciona bien hasta alli y puedo navegar perfectamente las tres pestañas sin ninguna dificultad.

Paso de DATOS GENERALES a DATOS CONTABLES o HISTORIA CLINICA...

Cuando voy a la pestaña que contiene las CONSULTAS, por supuesto que aun tengo listado todos los registros que cumplieron con la ultima condicion...y el que seleccioné todavia esta marcado.

Si muevo el Mouse hacia abajo de este registro...no hay problema...pero si trato de hacer click a un registro que esta por encima del que se marcó, no puedo moverme, solo lo puedo hacer con las flechas...y para elegir tengo que dar ENTER pues no funciona el DOOBLECLICK.

Si por ejemplo, me muevo con las flechas hacia arriba y elijo otro registro, lo puedo deplegar perfectamente pero al regresar nuevamente a la pestaña de CONSULTAS, no puedo hacer doble click ni elegir los regisros que estan mostrados por arriba del Primer registro que consulté...

Extraño pero cierto, solo puedo elegir por medio del mouse aquellos registros que estan por debajo del registro que seleccione la primera vez que hice la consulta.

Cualquiera informacion, agradecido.

Victor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Bloqueo de LISTBOX

Publicado por Jaume Girona (1 intervención) el 04/08/2014 19:42:04
Hola
3 años mas tarde de este post, me ha ocurrido lo mismo. Un formulario con un contenedor pageframe donde en distintas page tengo listbox. Al pasar de una pestaña a otra i volver a la primera me ha ocurrido lo mismo, que el click y doble click no funcionaba bien con el primer listbox. He estado haciendo pruebas y al final he encontrado la solución. Los listbox no pueden estar en la misma posición en los distintos pages. Yo los tenia todos ajustados a la izquierda y ha sido mover uno de ellos a la derecha y todos los listbox han vuelto a funcionar bien. La verdad es que no le veo ninguna explicación.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar