我在编写MFC多文档应用程序,并用OpenCV1.1提供的库函数读取图像时, 在显示几个图片之后,关闭窗口时进程并没有结束。
    现将做法公布如下, 望指点:
    1、建立MFC多文档应用程序
    2、添加如下代码:
 
void CImageProcessingView::OnDraw(CDC* pDC)
{
CImageProcessingDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc); CvvImage &img = pDoc->m_workImg; if(img.GetImage())
{
CRect r(0, 0, img.Width(), img.Height());
img.DrawToHDC(pDC->m_hDC, r);
} // TODO: add draw code for native data here
}
BOOL CImageProcessingDoc::OnOpenDocument(LPCTSTR lpszPathName) 
{
if (!CDocument::OnOpenDocument(lpszPathName))
return FALSE; m_srcImg.Load(lpszPathName);
m_workImg.CopyOf(m_srcImg);
// TODO: Add your specialized creation code here

return TRUE;
}BOOL CImageProcessingDoc::OnSaveDocument(LPCTSTR lpszPathName) 
{
// TODO: Add your specialized code here and/or call the base class
if(m_workImg.GetImage())
m_workImg.Save(lpszPathName);
return CDocument::OnSaveDocument(lpszPathName);
}CImageProcessingDoc::CImageProcessingDoc()
{
// TODO: add one-time construction code here}CImageProcessingDoc::~CImageProcessingDoc()
{
if(m_srcImg.GetImage())
m_srcImg.Destroy();
if(m_workImg.GetImage())
m_workImg.Destroy();
}
class CImageProcessingDoc : public CDocument
{
protected: // create from serialization only
CImageProcessingDoc();
DECLARE_DYNCREATE(CImageProcessingDoc)// Attributes
public:
CvvImage m_srcImg; //源图像
CvvImage m_workImg; //当前处理图像
};