Форум: "KOL";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
ВнизФайл в 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 ImgList:
TV.TVItemImage[ hItem ] := xIcon;
TV.TVItemSelImg[ hItem ] := xIcon;
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 вся ветка
Форум: "KOL";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.041 c