![]() |
Problema con hilo y pantalla inactiva
Hola,
Os comento, estoy desarrollando una aplicación a la que pretendo introducirle una funcionalidad que consiste en realizar una serie de tareas en modo background, a la vez que se ejecuta y puede interactuar el usuario con ella, sin que se la bloquee. Pues bueno, para ello he creado una clase nueva, que desciende de TThread:
Con sus respectivos metodos:
Donde Sto_SearchDirectory es una función que devuelve los ficheros encontrados según la ruta y demás opciones. Por otra parte desde el formulario, defino la variable y creo el hilo:
Todo funciona bien, el problema está en que el formulario queda "colgado" mientras se ejecuta, es decir, no hay diferencia entre hacerlo así y poner directamente el Sto_SearchDirectory sin crear el hilo, etc.. Que hago mal? o es así y con esto no se consigue lo que quiero? Gracias, Saludos. |
Hola MLROJO
El problema es que si usas el "Synchronize" de ese modo, lo que estas haciendo es lo mismo que si lo ejecutas en el hilo principal. Lo normal es que incluyas el método Sto_SearchDirectory en el thread y solo uses "Synchronize" cuando tienes que añadir elementos a lst. Saludos. |
Hola,
Muchas gracias, efectivamente, utilicé solamente "Synchronize" para añadir los datos a la lista y funcionó perfectamente. Gracias de nuevo, Saludos. |
La franja horaria es GMT +2. Ahora son las 07:53:37. |
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