Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Como mostrar vistas miniatura en un listview (https://www.clubdelphi.com/foros/showthread.php?t=86963)

JoAnCa 28-10-2014 19:33:42

Como mostrar vistas miniatura en un listview
 
Hola a todos
Pues estoy haciendo un sencillo explorador para mostrar archivos de video con delphi7, pero en los componentes listview que trae no muestra las vistas en miniatura
De que forma podria hacerlo o que componenete me serviría
El objetivo es para mi niña que pone sus videos y canciones infantiles y como no sabe leer (tiene 3 años), ella se guia por la imagen para ponerlos, entonces lo que quiero es que abra su explorador y seleccione los que quiere
Hasta ahora lo hace con el explorador de windows, pero como no tiene tanta habilidad, muchas veces en lugar de hacer clic arrastra, y con frecuencia pierde las carpetas

escafandra 28-10-2014 19:56:24

Hola JoAnCa, revisa esto.


Saludos.

Neftali [Germán.Estévez] 29-10-2014 10:07:46

Este componente permite realizar vistas previas de ficheros en el diálogo de abrir. No se si se puede adaptar a lo que necesitas.

A parte de los tipos predefinidos , tú puedes programar la previsualización de otros ficheros.

JoAnCa 30-10-2014 17:09:55

Escafandra
Ya habia visto el post que me recomiendas, pero a simple vista me parecio que es para cargar los thumb en un TImage, tal vez me equivoque, o quizas hay que hacerle algunas adecuaciones

Neftali
Con ese componente si es con el dialogo abrir, me parece que no se me ajusta a lo que quiero, pues tendria que hacer un paso adicional y puede confundirse

No obstante seguire investigando

escafandra 30-10-2014 17:38:50

Cita:

Empezado por JoAnCa (Mensaje 484010)
Escafandra
Ya habia visto el post que me recomiendas, pero a simple vista me parecio que es para cargar los thumb en un TImage, tal vez me equivoque, o quizas hay que hacerle algunas adecuaciones

Puedes colocarlas en un TImageList y usarlo en un TListView que usas como explorador...


Saludos.

JoAnCa 30-10-2014 18:07:02

gracias, lo probare a ver que tal me sale

JoAnCa 03-11-2014 21:10:29

Cita:

Puedes colocarlas en un TImageList y usarlo en un TListView que usas como explorador...
Estuve tratando de cargar las imagenes al imagelist con la funcion GetThumbnail de cHackAll, pero me da incompatibilidad de tipos, seguro que no use el metodo adecuado
Pudieras decirme como hacerlo?

JoAnCa 06-11-2014 17:23:05

Pues usando la funcion Obtener cualquier thumbnail de la Shell de cHackAll, combinada con el ejemplo de Neftali Crear componentes en un TScrollBox (runtime) me funciona bien si pongo directamente la ruta del archivo y el archivo:

Código Delphi [-]
im.Picture.Assign(GetThumbnail('D:\Animados', 'Mickey Mouse.mpg', 96, 96));

Pero si le paso el parámetro en una variable no me funciona

Poniendo:

Código Delphi [-]
Ruta:='D:\Animados';
Arch:='Mickey Mouse.mpg';
 
im.Picture.Assign(GetThumbnail(PWideChar(ruta), PWideChar(arch), 96, 96));

No me da error, pero los TImagen salen en blanco

A que se debera esto?

Si pongo PChar me da error de incomptibilidad de tipos

escafandra 07-11-2014 01:17:47

Seguro que declaraste Ruta y Arch como String, deben ser WideString

Prueba así:
Código Delphi [-]
var
 Ruta, Arch: WideString;

Saludos.

JoAnCa 12-11-2014 15:28:55

Solucionado
 
Un poco demorado para contestar, pero es que estaba ocupado con otras cosas

El problema es que hay que hacer algo con la conversion de tipos como se explica en este post

Código Delphi [-]
var
  Buffer      :Array [0..1000]of WideChar; 
  Direccion  :PWideChar;
  Addr        :String;

begin
   Addr:=edtCamino.Text + '\' + Tapiz;
   Direccion:= StringToWideChar(Addr,Buffer,Length(Addr)+1);
   StatusBar1.Panels[0].Text := WideCharToString(Direccion);
end;


La franja horaria es GMT +2. Ahora son las 23:09:27.

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