![]() |
Ventana con mensaje (No Responde)
Buenos Días
Tengo un Proceso que debe Llamar muchos Registros de una Base de Datos Firebird y llenar una Tabla Temporal para que el usuario escoja los registro que desea procesar, como son muchos registros en la mayoría de las ocasiones la Ventana me dice (NO RESPONDE) y al finalizar el proceso me la desaparece, como si estuviera minimizada, entonces al darle clic a la aplicación en la barra de Windows aparece Todo Normal. Que estará mal Programado ?? o que debo hacer en los casos que deba leer MUCHOS registros de la BD ? Gracias de Antemano |
Estaría bien ver el código fuente para poder opinar.
|
Cita:
Si estás ejecutando una consulta que tarda mucho es normal que suceda. Si estás ejecutando muchas consultas (por ejemplo en un FOR/WHILE) deberías utilizar un Application.ProcessMessages para dar tiempo a procesar otros mensajes. Cita:
Si es una consula muy pesada, tienes la opción de ejecutarla a un thread diferente (cosa que no es fácil si no has trabajado con threads). Otra opción podría ser intentar dividir la consulta para obtener los registros por bloques (si eso es posible segun la lógica del programa). |
Estimado Efren2006, lo que se requiere es...
Código, Código,Código,Código,Código,Código,Código,Código,Código.. :D Saludos cordiales |
Buenas Tardes
Perdonen no haber respondido antes,,, el Codigo es asi;
Imaginense que la tabla "RELACION" tiene 1000 Registros o mas... Alli la Ventana cuando Termina el Proceso me la desaparece y debo Minimizar la aplicación y volverla a maximizar para que me aparezca... Esa tabla la lleno temporal para que el usuario seleccione varios registros o todos,... |
Agrega en el while Application.ProcessMessages;
|
Cita:
Gracias por el Aporte Ya probé esta instrucción y sigo con el mismo Problema,, Investigare mas con respecto a esa funcion.. Saludos |
Hola, proba comentando la línea
|
Cita:
Cita:
Eliminar el bloqueo de la ventana y añadir un ProcessMessages para que se procesen los mensajes de la UI. |
Intenta esto:
Saludos |
La franja horaria es GMT +2. Ahora son las 06:22:35. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi