Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2024
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 102
Poder: 22
jmbarrio Va por buen camino
Cargar Imagenes a un TlistView

Buenas tardes, tengo un listview en el que cargo las imágenes de la carpeta Pictures. El codigo es

Código Delphi [-]
procedure TF_EliminarFotos.FormShow(Sender: TObject);
var
  FileList: TStringDynArray;
  FileName, FolderPath, cad: string;
  Item: TListViewItem;

begin
  ListFotos.AllowSelection := True;
  ListFotos.Items.Clear;
  FolderPath := TPath.Combine(TPath.GetSharedPicturesPath, '');
  // Lista todos los archivos en la carpeta
  FileList := TDirectory.GetFiles(FolderPath, 'foto_tomada_*.jpg', TSearchOption.soTopDirectoryOnly);
  // Sube cada archivo
  for FileName in FileList do
    begin
      try
        cad := FileName;
        cad := copy(cad,length('/storage/emulated/0/Pictures/') + 1,length(cad) - length('/storage/emulated/0/Pictures/'));
        Item := ListFotos.Items.Add;
        Item.Text := cad;
      except
        on e:exception do
          showmessage(e.message);
      end;
    end;

end;

Ahora lo que querría es cargar la imagen correspondiente en el Listview a través de un ImageList.
He visto el código para el componente VCL y lo he intentado adaptar, pero no soy capaz por más que busco

Código Delphi [-]
procedure TForm1.LoadPicturesToListView;
var
  PicturesPath: string;
  Files: TArray<string>;
  FileName: string;
  Bitmap: TBitmap;
  Item: TListViewItem;
  ImageIndex: Integer;
begin
  // Obtiene la ruta de la carpeta "Pictures"
  PicturesPath := TPath.Combine(TPath.GetSharedDocumentsPath, 'Pictures');

  // Obtiene la lista de archivos de imágenes (puedes filtrar por tipos de archivos si lo deseas)
  Files := TDirectory.GetFiles(PicturesPath, '*.*', TSearchOption.soTopDirectoryOnly);

  // Limpiar la lista de imágenes e ítems de la vista
  ImageList1.Clear;
  ListView1.Items.Clear;

  // Itera sobre los archivos y los carga en el TImageList y TListView
  for FileName in Files do
  begin
    if TPath.GetExtension(FileName).ToLower.Equals('.jpg') or
       TPath.GetExtension(FileName).ToLower.Equals('.png') then
    begin
      Bitmap := TBitmap.Create;
      try
        // Carga la imagen en un TBitmap
        Bitmap.LoadFromFile(FileName);

        // Añade la imagen al TImageList
        ImageIndex := ImageList1.Add(Bitmap);

        // Añade un ítem al TListView y asigna la imagen
        Item := ListView1.Items.Add;
        Item.Text := TPath.GetFileName(FileName);
        Item.Bitmap := Bitmap; // Opcional: Si quieres mostrar la imagen en una columna específica
        Item.ImageIndex := ImageIndex;
      finally
        Bitmap.Free;
      end;
    end;
  end;
end;

Código Delphi [-]
// Añade la imagen al TImageList
ImageIndex := ImageList1.Add(Bitmap);

esto no compila.

Un saludo, y muchas gracias por vuestra ayuda.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
llenar un Tlistview con imágenes alojadas en un mBaas (kinvey) jkokoj Desarrollo en Delphi para Android 0 15-03-2018 00:19:54
cargar imagenes de bdd dimitri PHP 1 20-03-2007 10:23:36
Cargar imágenes david.rguez Gráficos 0 21-11-2006 13:34:51
Cargar imagenes ramonibk Gráficos 7 26-07-2004 16:12:35
Cargar tabla Access en un TListView dabas OOP 2 23-10-2003 11:09:36


La franja horaria es GMT +2. Ahora son las 13:25:57.


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
Copyright 1996-2007 Club Delphi