![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
El error que describes es porque no as asignado el evento OnDestroy.
La pega que puede tener leer primero todos los archivos para guardarlos en un TStringList es que si son muchos se notará un retardo considerable antes de empezar a aparecer en el Label con lo que el programa parecerá "colgado". Una solución puede ser la siguiente, aprovechando el código expuesto y con alguna modificación mínima mas descartar el uso del Timer para usar un retardo Sleep(500): Código:
void ListFiles(char *Dir, TLabel *L)
{
struct _finddata_t fdt;
long hFile;
char tmp[MAX_PATH];
chdir(Dir);
fdt.attrib = _A_SUBDIR;
if ((hFile = _findfirst("*.*", &fdt) ) != -1) {
do {
if (fdt.attrib == _A_SUBDIR) {
if (strcmp(fdt.name,".")!= 0 && strcmp(fdt.name,"..") != 0) {
strcpy(tmp, Dir);
strcat(tmp, "\\");
strcat(tmp, fdt.name);
ListFiles(tmp, L);
}
}
else{
L->Caption = String(fdt.name);
Application->ProcessMessages();
Sleep(500);
}
} while (_findnext(hFile, &fdt) == 0);
_findclose(hFile);
};
}
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ListFiles("C:\\UNA_CARPETA", Label1);
}
Por supuesto que podemos encontrar muchísimas variantes más, pero esta es simple, fácil de entender y evita el trastorno de tener que esperar la lectura completa de la carpeta y subcarpetas en cuestión. Saludos. |
|
#2
|
|||
|
|||
|
gracias
Gracias escafandra y ecfisa,
sus dos caminos para la solución, ampliaron mas mi nivel de programación, sinceramente, sin sus ayudas me hubiera demorado mucho en hacerlo, y en internet seguro buscando lo encontraria, pero no lo encontre por eso recurrí por acá, nuevamente gracias. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Mostrar mas archivos de un sitio por FTP | ctronx | Varios | 3 | 03-03-2012 00:48:56 |
| Mostrar en una label un item de un ChekListBox | cslbcn | OOP | 2 | 23-01-2009 18:07:38 |
| Como mostrar Resultados de una consulta en componentes como los Edit,Label y DbGrids! | danny | Conexión con bases de datos | 2 | 08-05-2008 23:35:46 |
| Mostrar archivos 3ds | Drake | OOP | 1 | 04-08-2006 20:40:13 |
| Mostrar archivos y directorios en TListView | Drake | C++ Builder | 1 | 12-01-2006 15:48:54 |
|