Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.13;
Скачать: CL | DM;

Вниз

Файл в TreeView / ListView   Найти похожие ветки 

 
Денис   (2004-07-11 17:33) [0]

Требуется следующее: чтобы при перетаскивании файла или папки на форму
в компоненте типа TreeView / ListView появлялся соответствующий элемент,
причем с соответствующим ему системным значком.
В общем, чтобы было что-то наподобие видоизмененного ShellTreeView,
с файлами из разных папок.

p.s. Желательно, конечно, под KOL. Но можно решение и для VCL.

Буду очень благодарен всем откликнувшимся.
Ссылки на соотв. доки также только приветствуются.


 
z007   (2004-07-12 00:09) [1]

1. Имя файла (файлов) берешь из FileList OnDropFiles)
2. Узнаешь значок для него примерно так:
function GetIcon(FileName:string): Integer;
var SFI: TShFileInfo;
begin
 ShGetFileInfo( pChar(FileName), FILE_ATTRIBUTE_NORMAL, SFI,
                  sizeof( SFI ), SHGFI_ATTRIBUTES
                  or SHGFI_ICON or SHGFI_SMALLICON
                  or SHGFI_SYSICONINDEX );
 Result := FolderIconIdx;
end;

3. Создаешь новый item в TreeView
   hItem:=TV.TVInsert( hParent, TVI_SORT, FileName)
ставишь
   xIcon:= GetIcon(FileName);
   TV.TVItemImage[ hItem ] := xIcon;
   TV.TVItemSelImg[ hItem ] := xIcon;
Естественно, в начале надо приделать к TV ImgList:
   ImgList:= NewImageList( nil );
   ImgList.LoadSystemIcons( TRUE );
   TV.ImageListNormsl(Small):=ImgList...

Все :)


 
Денис   (2004-07-14 07:11) [2]

А если то же самое, но в VCL?
Наверное, все аналогично, но там
нет метода LoadSystemIcons для ImageList...
Как "загнать" системные значки в ImageList под VCL?


 
z007   (2004-07-19 20:20) [3]


> А если то же самое, но в VCL?

Боюсь, вопрос не для этого форума :)



Страницы: 1 вся ветка

Текущий архив: 2005.02.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
9-1100105853
Wish
2004-11-10 19:57
2005.02.13
Angle глючит!


1-1106592290
e-statik
2005-01-24 21:44
2005.02.13
а ПОДСКАЖИТЕ компонент сплиттер чтоб ресайзить окна как в 3DMAXe?


1-1106837943
Денис Шаров
2005-01-27 17:59
2005.02.13
Как поставить "Hook" на CDROM???


4-1103725932
Rayslava
2004-12-22 17:32
2005.02.13
Сохранение процесса


3-1105685777
Akhan
2005-01-14 09:56
2005.02.13
OnDrawColumnCell в DBGridEh