Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-08-2006
vivamotos vivamotos is offline
Miembro
 
Registrado: ago 2006
Posts: 150
Poder: 18
vivamotos Va por buen camino
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?
Responder Con Cita
  #2  
Antiguo 24-08-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
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
Responder Con Cita
  #3  
Antiguo 24-08-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
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
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 12-02-2007
Jucho69 Jucho69 is offline
Miembro
 
Registrado: ene 2007
Ubicación: Ciudad Habana, Cuba
Posts: 118
Poder: 18
Jucho69 Va por buen camino
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
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
evitar doble ejecucion en el programa... uper Varios 9 28-03-2017 19:36:02
local share = true programa colgado JoseQ Tablas planas 7 06-12-2004 22:40:07
Programa "colgado" alxrufino API de Windows 1 21-10-2004 21:36:02
Ejecutar un programa externo desde un programa de Delphi Roger_Fernandez Varios 3 02-09-2004 18:05:36
Ejecutar un programa DENTRO de otro programa seduerey Varios 8 12-11-2003 13:56:20


La franja horaria es GMT +2. Ahora son las 14:30:49.


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
Copyright 1996-2007 Club Delphi