MFC应用实例:[50]获取文件的图标

2025-04-20 11:25:03

1、新建一个基于对话框的应用程序,工程名为GetFileIcon。

MFC应用实例:[50]获取文件的图标

2、如下图为对话框添加三个按钮,一个编辑框,一个静态文本。

MFC应用实例:[50]获取文件的图标

3、为“打开”按钮建立响应脑栲葱蛸函数OnOpen(),在响应函数OnOpen()中添加一下代码:void CGetFileIconDl爿讥旌护g::OnOpen(){ // TODO: 在此添加控件通知处理程序代码 CString strFilter="All Files(*.*)|*.*||"; CFileDialog dlg(TRUE, NULL, NULL, OFN_EXPLORER|OFN_HIDEREADONLY| OFN_ENABLESIZING|OFN_FILEMUSTEXIST,strFilter); if(dlg.DoModal() == IDOK )//显示打开文件对话框 { m_filename=dlg.GetPathName(); } UpdateData(false);}

MFC应用实例:[50]获取文件的图标

4、为获取图标按钮建立响应脑栲葱蛸函数OnGeticon(),在响应函数OnGeticon()中添加一下代码:void CGetFile朐袁噙岿IconDlg::OnGeticon(){ // TODO: 在此添加控件通知处理程序代码 UpdateData(true); SHFILEINFO shfi; //文件信息结构变量用于存放函数调用的结果 memset(&shfi,0,sizeof(shfi)); SHGetFileInfo(m_filename, FILE_ATTRIBUTE_NORMAL, &shfi, sizeof(SHFILEINFO),SHGFI_ICON); CStatic *pStatic=(CStatic *)GetDlgItem(IDC_STATIC1); //设置静态控件的样式,使其可以使用图标,并试图标显示使居中 pStatic->ModifyStyle(0xF,SS_ICON|SS_CENTERIMAGE); //设置静态控件图标 pStatic->SetIcon(shfi.hIcon);}

MFC应用实例:[50]获取文件的图标

5、程序运行如下:

MFC应用实例:[50]获取文件的图标

6、打开桌面的新建文本文件.txt程序运行如下:

MFC应用实例:[50]获取文件的图标
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢