Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   evitar colgado de programa (https://www.clubdelphi.com/foros/showthread.php?t=34892)

vivamotos 24-08-2006 18:24:08

evitar colgado de programa
 
Saludos,

Mirad tengo el siguiente problema.

Tengo un programa hecho en builder c++ de migración de datos, y entonces claro, cuando migro datos tarda mucho.
Entonces mi problema es que mientras esta migrando el programa se queda tonto, no puedo minimizarlo ni ver como esta, que puedo hacer para evitar esto?

Bicho 24-08-2006 22:16:28

Hola vivamotos, puedes usar los siguiente en cada ciclo del bucle que estés usando

Código Delphi [-]
Application->ProcessMessages();

Eso te permitirá que se refresque la pantalla, que la puedas minimizar, etc.

Espero te sirva.

Saludos

dec 24-08-2006 22:19:37

Hola,

Tal vez tendrías que plantearte el llevar a cabo esa tarea tan "pesada" en un Hilo distinto del principal de la aplicación. Sobre los Hilos no me veo yo indicado para dar instrucciones a nadie, pero, es cuestión de que te informes un poco. Por ejemplo Delphi cuenta con la clase "TThread", que supongo que también estará en C++ Builder, y que facilita un tanto la creación y el proceso de distintos Hilos.

A veces es simplemente cuestión de tratar que la aplicación no se "ahoge" con el proceso (generalmente un bucle "while" o "for") que tiene que llevar a cabo. Para esto podría bastar situar alguna instrucción "Application.ProcessMessages" dentro del bucle para conseguir que la aplicación (sobre todo lo que toca a la interfaz de la misma) se alivie un poco y no se quede tan "colgada".

PD. Bicho 1 - dec 0 :D

Jucho69 12-02-2007 17:16:59

A veces es simplemente cuestión de tratar que la aplicación no se "ahoge" con el proceso (generalmente un bucle "while" o "for") que tiene que llevar a cabo. Para esto podría bastar situar alguna instrucción "Application.ProcessMessages" dentro del bucle para conseguir que la aplicación (sobre todo lo que toca a la interfaz de la misma) se alivie un poco y no se quede tan "colgada".

Hola...

Una vez mas me quito el sombrero ante los grandes.

Saludos


La franja horaria es GMT +2. Ahora son las 16:10:17.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi