Dev - C++ - Hilos y la VCL en C++Builder

 
Vista:
Imágen de perfil de Leonardo
Val: 26
Ha disminuido su posición en 4 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Hilos y la VCL en C++Builder

Publicado por Leonardo (1 intervención) el 22/05/2017 22:47:28
Hola! Estoy desarrollando un plugin para el gestor de archivos TotalCommander. Para ello, en tiempo de ejecución, creo unas pestañas e hilos por cada unidad(Torre) conectada para realizar copia de ficheros
hacia ellas. Al terminar la copia(sin destruir el hilo) debe mostrarme un TEdit para escribir algo. Esto no
me funciona: se bloquea la aplicación. Traté con el método Synchronize que, según la documentación, debe
llamarse para acceder a objetos de la VCL como el TEdit en cuestión y nada. Lo curioso es que sí me funciona
el activar(Edit->Enabled=true;) o desactivar el componente sin ningún problema, incluso sin usar Synchronize.
Pero para mostrarlo (Edit->Visible=true; ó Edit->Show()) da problemas con o sin Synchronize. Necesito que
el Edit se pueda mostrar o no en función de si procesó todo lo que está en una lista que va procesando en el
método Execute del Thread, ya saben con una condición: While !Terminated && Lista->Count y al final pongo
el hilo en pausa Thread->Suspended=true. No debo terminarlo porque la condición de la Lista vacía puede
dejar de ser cierta dentro del ciclo si le agrego algún elemento por otro lado.

Espero me haga entender lo explicado y respondan
PD puede ser en Delphi o CBuilder. Conozco los dos y la situación sería la misma.

Gracias.
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