Cita:
Empezado por delphi.com.ar
Tienes que asignarle como lista de imágenes, las imágenes del buffer del sistema
Código Delphi [-]
ilHandle := SHGetFileInfo('C:\', 0, shFileInfo, SizeOf(shFileInfo),
SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
SendMessage(tvFileSystem.Handle, TVM_SETIMAGELIST, TVSIL_NORMAL, ilHandle);
SendMessage(lvFileSystem.Handle, LVM_SETIMAGELIST, LVSIL_SMALL, ilHandle);
Luego cada el índice de cada ícono tienes que averiguarlo con la función SHGetFileInfo.
Te recomiendo ver el código de los ShellCtrls que trae de ejemplo Delphi, o un ejemplo llamado "Virtual Listview"
Saludos!
|
Hola! he visto tu mensaje y me parece muy bueno, pero me surgen unas dudas pues no alcanzo a entender tu codigo al 100%. Supongo que con el segmento anterior pueda obtener todos los iconos de fichero y asociarlos al TreeView, ahora, como controlo que los ficheros seleccionados tengan el icono correspondiente? Yo programe una funcion que a partir de un path me de todos los archivos y carpetas que contenga dentro recursivamente, pero ahora necesito asociarle el icono correspondiente, y es lo qu eno se como hacerlo. Las cosas que he visto por los foros no me aclaran totalmente... Intente obtener el icono del fichero, luego convertirlo a un Bitmap y annadirlo a un ImageList, pero no me funciona. Cual de las dos variantes me recomiendan? Como hacerlas?