![]() |
Como Evitar que la Pantalla se "blanquee" durante un proceso
Buenos dias
no sé si a alguno de ustedes le ha pasado que mientras estan haciendo un proceso de actualizacion o la ejecucion de un query complicado el cual demora si minimizamos o pasamos a otra ventana (fuera del sistema) y regresamos al sistema, la pantalla se encuentra en blanco y no aparecen las imagenes (llamese form, botones, grids, etc) hasta que el proceso culmine he colocado un ProgressBar que me indica el progreso.. pero solo se ve ese componente cuando realizo la accion anterior algun comentario? he colocado Application.ProcessMessages pero tampoco me da resultados |
Prueba a poner el proceso dentro de un Thread.
Saludos |
Además, luego que actualices el estado del ProgressBar, utiliza el procedimiento Update del formulario que "queda en blanco".
Saludos, Chris |
estuve revisando informacion sobre Hilos de Ejecucion y esta muy interesante
el tema es que no comprendo bien como implementarlo, les comento lo que estoy haciendo tengo un form donde hay edits y en cada edit se almacena la ubicacion de un archivo plano para su procesamiento hay un boton (procesar) que al darle Click, pues hace lo que iene que hacer con los archivos como hago para aplicar los hilos? tengo esto
la cosa es... como le digo al hilo que funcione cuando doy click en Procesar... CRIS... no encontre el procedimiento Update en el form :( Uso Delphi 7 |
Estas cosas con linux no pasa porque la multitarea funciona mucho mejor y reparte el tiempo de procesador para no dejar "tirado" a ninguno. Que ese es el problema de la pantalla en blanco, que el procesador no tiene tiempo para repintar la pantalla al estar ocupado con otra cosa.
Si no lo digo... reviento :D De todas formas este problema que tienes te ocurrirá solamente si usas el mismo equipo como cliente y servidor, ya que si usas un sistema cliente/servidor "normal", o sea, con un equipo haciendo de servidor, no tendrás ese problema porque el ocupado será el servidor, pero no tu ordenador, el cliente. |
Cita:
Saludos, Chris |
Cita:
Saludos, Chris |
lo hice funcionar con hilos
en el evento onClick del button pongo esto y se ejecuta
el problema que tuve fue que en la ehjecucion de los comandos del hilo, no me reconocia las tablas ni querys que estaban en el formulario tuve que invocar al mismo formulario para que lo reconozca Sin hilo Con hilo es normal eso? o me falto declarar algo |
Cita:
La clase TThread define un procedimiento especial llamado Synchronize. Este procedimiento es la abstracción más alta de lo que se conoce cómo semáforos. Todas las lecturas/escrituras que hagas a frmrecepcion deben ser por medio del procedimiento Synchronize. Para hacer las lecturas/escrituras por medio de Syncronize, todas éstas deben estar encapsuladas en procedimientos separados. Saludos, Chris |
entonces tengo que leer mas
|
La franja horaria es GMT +2. Ahora son las 21:06:05. |
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