程序功能:实现打开文件过滤、创建滚动视图类、对小图使子窗口按适应图大小、对大图支持子窗口的滚动。
另存为功能,方便图片格式的转换
下面是步骤:
VC++2005 创建MFC应用程序->多文档项目Image
在“MFC应用程序向导”最后一步的“生成的类”页,将C*View的基类从缺省的CView改成CScrollView。
ImageDoc.h 添加
#include <atlimage.h> // 用到CImage类
文档类添加img对象
CImage img;
在CImageDoc::Serialize添加下面代码,装入图像文件
if (!img.IsNull()) img.Destroy();
HRESULT hr = img.Load(ar.GetFile()->GetFilePath());
ASSERT(SUCCEEDED(hr));
为了MDI程序在开始运行时不自动创建一个新文档及其对应子窗口,可在应用程序类C*App的InitInstance函数的语句
// 分析标准外壳命令、DDE、打开文件操作的命令行
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
与
// 调度在命令行中指定的命令。如果
// 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。
if (!ProcessShellCommand(cmdInfo))