如何在CListCtrl中插入系统的图标?(如果.htm后缀的文件就显示ie那个图标)

解决方案 »

  1.   

    成员变量
    CImageList m_SmallImage;
    CImageList m_LargeImage;在初始化中添加
    HIMAGELIST hSmallImage,hLargeImage;
    SHFILEINFO shFi;
    hSmallImage = (HIMAGELIST)SHGetFileInfo("C:\\",0,&shFi,sizeof(shFi),
    SHGFI_SYSICONINDEX|SHGFI_SMALLICON);
    hLargeImage = (HIMAGELIST)SHGetFileInfo("C:\\",0,&shFi,sizeof(shFi),
    SHGFI_SYSICONINDEX|SHGFI_LARGEICON); if((!hSmallImage) || (!hLargeImage))
    return ; m_SmallImage.m_hImageList = hSmallImage;
    m_LargeImage.m_hImageList = hLargeImage; pListCtrl->SetImageList(&m_SmallImage,LVSIL_SMALL);
    pListCtrl->SetImageList(&m_LargeImage,LVSIL_NORMAL);
      

  2.   

    to shenhai79(我爱VC)
    那怎么让文件后缀和图标序号对应起来呢?
      

  3.   

    SHFILEINFO sfi;
    memset(&sfi, 0, sizeof(sfi)); SHGetFileInfo(sFileName,  
    FILE_ATTRIBUTE_NORMAL, 
    &sfi, 
    sizeof(sfi), 
    SHGFI_LARGEICON | SHGFI_ICON |
    SHGFI_USEFILEATTRIBUTES);
    就是这个
    sfi.iIcon