Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   crear administrador de archivo (https://www.clubdelphi.com/foros/showthread.php?t=79840)

mjjj 14-08-2012 21:09:58

crear administrador de archivo
 
Estimados, necesito crear un administrado de archivo, pero con la condición que el usuario entre a un path específico y a sus subcarpetas..
Necesito que cree carpetas, copie y borre archivos.

Estoy intentandolo con los componentes: TFileListBox, TDirectorylistbox, pero no logro que entre a un directorio unico.

Alguna idea, ojalá algún ejemplo.

Gracias

ecfisa 14-08-2012 22:07:51

Hola mjjj.

Realmente no está muy claro cuál es el problema, pero por esto que dices:
Cita:

pero con la condición que el usuario entre a un path específico y a sus subcarpetas..
Supongo que deseas que solo pueda moverse por la carpeta especificada y sus subcarpetas.

Si interpreté bién, se me ocurre que podrías hacer:
Código Delphi [-]
const
  DIR_ALLOWED = 'C:\DELL'; // Directorio permitido (ejemplo) 

procedure TForm1.FormCreate(Sender: TObject);
begin
   DirectoryListBox1.Directory:= DIR_ALLOWED;
end;

// ...

procedure TForm1.DirectoryListBox1Change(Sender: TObject);
begin
  if Copy(UpperCase(DirectoryListBox1.Directory), 1, Length(DIR_ALLOWED)) <> DIR_ALLOWED then
  begin
    DirectoryListBox1.Directory := DIR_ALLOWED;
    DirectoryListBox1.OpenCurrent;
  end;
end;

Saludos.

mjjj 17-08-2012 16:17:04

Encontre unos componentes que realizan lo mismo, pero me da la posibilidad de poner el root donde quiero acceder, exactamente lo que necesitaba.

Por otro lado, estoy probando el drag and drop para copiar archivos entre carpetas, pero tengo un problema: "Nose como identificar cual es la carpeta donde se copiará el archivo, dentro del directorylistbox, yha que solo se identifica cuando la seleccionas, no cuando te posicionas sobre la carpeta seleccionada". Creo que el tema va en ocupar el evento onmouseup, pero no tengo idea de como hacer, las variables x e y, al parecer con coordenadas cartesinas...

Alguien me puede ayudar a resolver esto?

Gracias

ecfisa 17-08-2012 16:48:11

Cita:

Empezado por mjjj (Mensaje 439824)
Encontre unos componentes que realizan lo mismo, pero me da la posibilidad de poner el root donde quiero acceder, exactamente lo que necesitaba.

Por otro lado, estoy probando el drag and drop para copiar archivos entre carpetas, pero tengo un problema: "Nose como identificar cual es la carpeta donde se copiará el archivo, dentro del directorylistbox, yha que solo se identifica cuando la seleccionas, no cuando te posicionas sobre la carpeta seleccionada". Creo que el tema va en ocupar el evento onmouseup, pero no tengo idea de como hacer, las variables x e y, al parecer con coordenadas cartesinas...

Alguien me puede ayudar a resolver esto?

Gracias

Hola mjjj.

Dado que tienes mas de 500 mensajes no tendría que solicitarte esto, pero por favor: Repasa los puntos 9 y 10 de la guía de estilo.

Por otro lado ¿ Leiste el mensaje #2 de este hilo ? ¿ Era lo que buscabas en el mensaje #1 ? ¿ No ?... :confused:

Saludos. :)

mjjj 17-08-2012 17:01:10

Primero que nada, el problema original lo resolví con otros componentes (TsShelltreeView y TsShellListView), ya que los propios de Delphi no trae la opoción de definir un carpeta de inicio (root). La solución entregada por ustedes no me sirvió, ya que como el evento es onchange, cada vez que corrijo el directorio se vuelve a ejecutar esta rutina. En conclusión el primer tema está resulto con los componentes sitados.

El segundo tema, si bien no hacen referencia a lo mismo, es parte del mismo titulo "crear administrador de archivo", lo expongo nuevamente.

Luego de resolver el problema del directorio, estoy probando el drag and drop para copiar archivos entre carpetas, pero tengo un problema: "Nose como identificar cual es la carpeta donde se copiará el archivo, dentro del Tdirectorylistbox, ya que solo se identifica cuando la seleccionas, no cuando te posicionas sobre la carpeta seleccionada (drag)"

Espero no haber causado mayor problemas.

Saludos.

roman 17-08-2012 17:34:55

Cita:

Empezado por mjjj (Mensaje 439828)
Primero que nada, el problema original lo resolví con otros componentes (TsShelltreeView y TsShellListView), ya que los propios de Delphi no trae la opoción de definir un carpeta de inicio (root).

Los componentes TShellListView y TShellTreeView que vienen con Delphi, sí tienen la opción de definir la carpeta raíz.

Cita:

Empezado por mjjj (Mensaje 439828)
El segundo tema, si bien no hacen referencia a lo mismo, es parte del mismo titulo "crear administrador de archivo", lo expongo nuevamente.

Por favor, abre un nuevo hilo para otro tema. El argumento que das de que forma parte de un mismo título no aplica. En tal caso, cualquiera podría venir y decir que todo lo que pregunta es para su programa de nóminas.

// Saludos

ecfisa 17-08-2012 17:38:28

Hola mjjj.

No me refería a que el mensaje no esté relacionado con el tema sino a la falta de organización en la exposición del problema en el mensaje #3. (sobre eso tratan los puntos 9 y 10).

Saludos. :)


La franja horaria es GMT +2. Ahora son las 11:06:07.

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