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

Вниз

FindFirst & FindNext   Найти похожие ветки 

 
Uriel ©   (2004-02-13 13:42) [0]

Добрый день ув. мастера.
Есть ListView, куда FindFirst"ом & FindNext"ом кидается список папок и файлов.

r := FindFirst(DirStr + "*.*", faAnyFile, DirInfo);
while r = 0 do begin
Application.ProcessMessages;
ListItem := ListView.Items.Add;
ListItem.Caption := DirInfo.Name;
if DirInfo.Attr = FaDirectory then
ListItem.ImageIndex := 0
else ListItem.ImageIndex := 1;
r := FindNext(DirInfo);
end;
SysUtils.FindClose(DirInfo);

Проблема в том, что таким макаром у всех файлов получаеться иконка с ImageIndex = 1, как бы мне сделать так, чтобы у файлов были их родные иконки, т.е. у *.doc - иконка MS Word и т.д.

ЗАРАНЕЕ ОГРОМНОЕ СПАСИБО


 
Palladin ©   (2004-02-13 13:46) [1]

ExtractAssociatedIcon


 
Юрий Зотов ©   (2004-02-13 14:05) [2]

А еще неплохо было бы подправить код (сделать его короче, проще, безопаснее и надежнее):

if FindFirst(...) = 0 then
try
repeat
with ListView.Items.Add do
begin
Caption := DirInfo.Name;
ImageIndex := Ord(DirInfo.Attr and FaDirectory = 0)
end
until FindNext(...) <> 0
finally
FindClose(...)
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
14-80137
SergP
2004-02-01 23:36
2004.02.25
Вопрос про кеширование


1-79893
Furkan
2004-02-10 10:08
2004.02.25
Консоль и невизуальные компоненты


14-80135
IIStan
2004-02-02 01:25
2004.02.25
Где можно купить неонувую лампу?


14-80096
MPS
2004-02-03 10:55
2004.02.25
Чайнические вопросы по Линуксу


14-80149
Мыслитель
2004-01-30 18:21
2004.02.25
Бойцовский Клуб!