Ejemplos usando el Api de windows para Visual basic
Volver al Listado Api - Anterior - Siguiente
Contenido
Este ejemplo utiliza las siguientes funciones del Api de windows: ImageList_Draw y SHGetFileInfo.
El mismo muestra como poder hacer en un control Listview, que tiene la propiedad OLEDropMode activada, para hacer un Drag and Drop de archivos desde el explorador y también ver a parte de la ruta , los íconos como muestra la imagen:
El funcionamiento es resumidamente asi:
Al arrastrar los archivos al ListView, se ejecuta el evento OLEDragDrop del ListView.
Dentro del evento, se recorre en un bucle la colección Data.Files, que tiene la lista de archivos, es decir tiene los paths. En cada iteración del bucle, se llama a otra Rutina que se encarga de recuperar el ícono asociado, pasandole el path. El ícono se dibuja mediante el api ImageList_Draw en un control Picturebox, y luego se pasa la imagen del icono dibujada en el picture a un ImageList, que se asocia luego al control ListView en tiempo de ejecución
Colocar un control ListView llamado ListView1 y un control ImageList llamado ImageList1.
Nota: el ejemplo está hecho para visualizar solo en vista de Iconos, por eso si cambiamos la propiedad View del Listview a otra vista diferente, el ícono no se verá, solo se visualizará la ruta
Código fuente en el formulario
Este ejemplo es similar también utilizando la función del Api SHGetFileInfo para obtener el ícono del los archivos y carpetas, pero a diferencia del otro, no se utiliza un picturebox temporal para dibujar el ícono, si no que se utiliza la función OleCreatePictureIndirect para retornar la imagen y luego poder agregarla al control imagelist
formulario de ejemplo
Agregar un control ListView al formulario llamado LV
Código fuente en el form
Buscar en Recursos vb
Recursos visual basic - Buscar - Privacidad - Copyright © 2005 - 2009 - www.recursosvisualbasic.com.ar