windows mobile下获取系统图标

windows mobile下获取系统图标

ID:9649326

大小:48.50 KB

页数:2页

时间:2018-05-04

windows mobile下获取系统图标_第1页
windows mobile下获取系统图标_第2页
资源描述:

《windows mobile下获取系统图标》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Windowsmobile下获取系统图标  这个问题其实是由pocketpc的CFileDialog问题引发来的。  CFileDialog打开后,只能选择MyDocuments下的目录和文件,功能超弱的说(其实应该叫CDocumentFileDialog才对)。  好想自己做一个Dialog啊,就跟PC上一样,可以选择任务目录和文件......  枝节不叙,捡点重要的来啰嗦。  用到一个CListCtrl控件,来显示目录下的文件,当然图标最好跟系统的一样,这样才美观。  这里假设m_ListFile就是list控件,m_ImlSys为CImageList对象,都为对话框的成员变量。代码如下

2、:HIMAGELIST  hImlSys;SHFILEINFO  ssfi;  memset(ssfi,0,sizeof(ssfi));hImlSys=(HIMAGELIST)SHGetFileInfo(                   _T(hello),                  0,                  ssfi,                  sizeof(SHFILEINFO),                  SHGFI_USEFILEATTRIBUTES

3、SHGFI_SYSICONINDEX

4、SHGFI_SMALLICON);  m_ImlSys

5、.Attach(hImlSys);m_ListFile.SetImageList(m_ImlSys,LVSIL_SMALL);  这样把系统的小图标(SHGFI_SMALLICON)都载入到了m_ImlSys。这些代码在Dialog的OnInitDialog中实现。hello也可以写成任何值,因为使用了SHGFI_USEFILEATTRIBUTES参数,会忽略第一个参数。还有一个很重要的问题是,在对话框退出时,要调用m_ImlSys.Detach()来销毁资源。不然,很可能退出对话框后,连系统开始的的图标都看不到了。  CListCtrl的InsertItem可以指定显示图标的索引(即图标在

6、CImageList中的位置)。那么,怎么得到这个索引值呢?  还是使用SHGetFileInfo函数,如下:SHFILEINFOssfi;SHGetFileInfo(pszFileName,0,ssfi,sizeof(SHFILEINFO),SHGFI_SYSICONINDEX

7、SHGFI_SMALLICON);  ssfi.iIcon就是我们要的值。在这里,pszFileName请指定文件的整个路径(包括后缀名)。——感谢阅读这篇文章,..,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。