CString Path = lpszPath
CString lpsz = Path +L"\\"
Path = Path +L"\\*.*"
BOOL IsFind = find.FindFile(Path)
while(IsFind )
{
IsFind=find.FindNextFile()
//如果是"."则不扫描
if(find.IsDots())
continue
//是目录,继续扫描此目录
else if(find.IsDirectory())
{
CString strPath = lpszPath
strPath = strPath + L"\\" + find.GetFileName()
ScanDiskFile(strPath)
}
//文件
else
{
//获得文件的路径
m_strFile = find.GetFileName()
CString extend = m_strFile.Right(m_strFile.GetLength() - m_strFile.ReverseFind('.') - 1)//取得扩展名
if (extend == m_ext_one | extend == m_ext_two)//m_ext_now为你要查找的文件扩展名
{
m_strArray.Add(lpsz + m_strFile)
}
}
}
find.Close()
m_ext_one、m_ext_two用于指定需要搜索的文件后缀名
MFC使用的是基于GDI的封装,在图片中容易留下锯齿等等。我试过,在有些图片下相当失真。建议使用Gdiplus。首先#include <Gdiplus.h>
#pragma comment(lib, "gdiplus.lib")
using namespace Gdiplus
然后是初始化:
ULONG_PTR gdiplusToken
GdiplusStartupInput gdiplusStartupInput
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL)
退出程序用
GdiplusShutdown(gdiplusToken)
然后,加载图片就简单了,直接Image img(TEXT("C:\\a.bmp")),并且效果相当好
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)