原文地址:http://www.opencv.org.cn/forum.php?mod=viewthread&tid=30832
第一部分,参考http://jingyan.baidu.com/article/f71d60375ddd411ab641d1e3.html进行配置。
第二部分,参考http://www.opencv.org.cn/forum.php?mod=viewthread&tid=30832对第一部分进行改进,即可。
void CMFC_DEMODlg::DrawPicToHDC(IplImage *img, UINT ID)
{
CDC *pDC = GetDlgItem(ID)->GetDC();//获取某控件(ID对应)的设备绘图指针
HDC hDC= pDC->GetSafeHdc();//获取该DC指针的句柄
CRect rect;
GetDlgItem(ID)->GetClientRect(&rect);//获取控件的坐标范围
CvvImage cimg;
cimg.CopyOf( img ); // 复制图片
cimg.DrawToHDC( hDC, &rect ); // 将图片绘制到显示控件的指定区域内
ReleaseDC( pDC );
}
void CMFC_DEMODlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码//OpenImg
//IplImage *image=NULL;
if(image) cvReleaseImage(&image);
image = cvLoadImage("1.jpg",1); //显示图片
src_mat = cvarrToMat(image,true);
DrawPicToHDC(image, IDC_STATIC);
}