码迷,mamicode.com
首页 > 其他好文 > 详细

使用CFileFind类查找文件并获取文件图标

时间:2014-08-12 17:40:24      阅读:292      评论:0      收藏:0      [点我收藏+]

标签:cfilefind类   shfileinfo   cimagelist   clistctrl   提取文件图标   

以CListCtrl为例,使用CFileFind类查找文件并获取文件的图标填充到CListCtrl中

主要代码如下:

int CTestDlg::OnInitDialog(void)
{
//获取控件指针
CListCtrl* plst_ctl=(CListCtrl*)GetDlgItem(IDC_LIST1);//IDC_LIST1为CListCtrl控件的ID
//添加图标(将图标存放在CImageList对象中,并与CListCrtl控件相关联)
//m_imagelist_b.Create(32,32,ILC_COLOR32|ILC_MASK ,0,0);//大图标
m_imagelist_s.Create(16,16,ILC_COLOR32|ILC_MASK ,0,0);//小图标
//plst_ctl->SetImageList(&m_imagelist_b,LVSIL_NORMAL);//大图标
plst_ctl->SetImageList(&m_imagelist_s,LVSIL_SMALL);
CFileFind findfile;
 //查找windows目录下的所有文件
int nfound=findfile.FindFile(L"C:\\Windows\\//*.*");
int i=0;
 while(nfound)
 {
 nfound=findfile.FindNextFile();
  //如果为文件夹则跳过
 if (findfile.IsDirectory())
 {
 continue;
 }
 SHFILEINFO finfo;
 //获取文件信息,主要图标icon
 SHGetFileInfo(findfile.GetFilePath(),0,&finfo,sizeof(finfo),SHGFI_ICON );
 //添加文件项目和图标
 //m_imagelist_b.Add(finfo.hIcon);//向ImageList里添加图标资源
 plst_ctl->InsertItem(i++,findfile.GetFileName(), m_imagelist_s.Add(finfo.hIcon));
 }
findfile.Close();//释放资源
return 0;
}

运行结果:

bubuko.com,布布扣

使用CFileFind类查找文件并获取文件图标,布布扣,bubuko.com

使用CFileFind类查找文件并获取文件图标

标签:cfilefind类   shfileinfo   cimagelist   clistctrl   提取文件图标   

原文地址:http://jincheng.blog.51cto.com/4625177/1538991

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!