Форум: "Основная";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизЯ могу получить в Imagelist виндосовские иконки, как теперь Найти похожие ветки
← →
Regards (2004-12-09 01:26) [0]определить с какой иконкой ассоциирован нужный мне тип файла ? ".txt", ".jgp" и другие.
SHGetDesktopFolder(Desktop);
SHGetSpecialFolderLocation(Application.Handle, CSIDL_HISTORY, HistoryPIDL);
ImageList1 := TImagelist.Create(Self);
ImageList1.Handle := SHGetFileInfo(Pchar(HistoryPidl), 0, FileInfo,
SizeOf(FileInfo), SHGFI_PIDL or SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
Имеется в виду нужно получить номре в ИмаджЛисте. Нужно, чтобы использовать в ТриВью.
← →
Regards (2004-12-09 01:30) [1]
var
FileInfo : TSHFileInfo;
HistoryPidl : PItemIDList;
Desktop : IShellFolder;
ImageList1 : TImagelist;
← →
Regards (2004-12-10 01:32) [2]Да, мастера, это сложный вопрос. Мастерский.
← →
Dolt © (2004-12-10 09:26) [3]s:=ansilowercase(ExtractFileExt(s));
SHGetFileInfo(PChar(s), 0, MoreInfo, SizeOf(MoreInfo), SHGFI_USEFILEATTRIBUTES or SHGFI_ICON);
ImageIndex:=MoreInfo.Iicon;
← →
Rouse_ © (2004-12-10 09:35) [4]какую тебе ассоциацию?
Ты сначала посмотри что ты получаешь...procedure TForm1.Button1Click(Sender: TObject);
var
FileInfo : TSHFileInfo;
HistoryPidl : PItemIDList;
Desktop : IShellFolder;
I: Integer;
begin
SHGetDesktopFolder(Desktop);
SHGetSpecialFolderLocation(Application.Handle, CSIDL_HISTORY, HistoryPIDL);
ImageList1.Handle := SHGetFileInfo(Pchar(HistoryPidl), 0, FileInfo,
SizeOf(FileInfo), SHGFI_PIDL or SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
for I := 0 to 100 do
ImageList1.Draw(Canvas, 16 * I, 10, I);
end;
Это раз.
Второе - зачем тебе нужен в таком варианте кода вот эта строчка "SHGetDesktopFolder(Desktop);"? Она тут ни к чему.
Третье - к твоему сведенью интерфейс IShellFolder имеет метод EnumObjects
← →
Regards (2004-12-11 03:42) [5]
> Dolt © (10.12.04 09:26) [3]
> s:=ansilowercase(ExtractFileExt(s));
> SHGetFileInfo(PChar(s), 0, MoreInfo, SizeOf(MoreInfo), SHGFI_USEFILEATTRIBUTES
> or SHGFI_ICON);
> ImageIndex:=MoreInfo.Iicon;
Получается. Спасибо !
Где бы мне чего-нибудь почитать по этому вопросу. А то в справке Дельфи нихрена нету.
> Rouse_ © (10.12.04 09:35) [4]
> Второе - зачем тебе нужен в таком варианте кода вот эта
> строчка "SHGetDesktopFolder(Desktop);"? Она тут ни к чему.
Просочилась. Недовырезанный результат моих эксперементов.
> Третье - к твоему сведенью интерфейс IShellFolder имеет
> метод EnumObjects
Я не знаю как этим пользоваться.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.036 c