OpenCv显示窗口移植到MFC

来源:互联网 发布:emlog5.3.1源码下载 编辑:程序博客网 时间:2024/06/14 05:47
 OpenCv中提供了cvNamedWindow函数创建窗口,然后在该窗口中进行操作,比如显示cvShowImage,
但是很多时候我们要将OpenCv程序移植到我们的程序中,比如MFC中的文档类和基于对话框类,下面
就是OpenCv在这两类显示的方法。


1.SDI
   HWND *pwnd;CRect rect;CDC *pDC;HDC hDC;CvvImage m_CvvImage;
    CMainFrame* pMain=(CMainFrame*)AfxGetMainWnd();
    pwnd = pMain;
    pDC =pwnd->GetDC();
    hDC= pDC->GetSafeHdc();
   pwnd->GetClientRect(&rect);


然后在cvShowImage的地方有下面代码
m_CvvImage.CopyOf(image,1);
m_CvvImage.DrawToHDC(hDC, &rect);

2.对话框
和在SDI中大多雷同,只是在对话框的时候,我们要用picture控件,如果其ID为ID_SHOWPIC
    HWND *pwnd;CRect rect;CDC *pDC;HDC hDC;CvvImage m_CvvImage;
    pwnd=GetDlgItem(ID_SHOWPIC);
   pDC =pwnd->GetDC();
    hDC= pDC->GetSafeHdc();
   pwnd->GetClientRect(&rect);
其他地方和SDI中一样。
原创粉丝点击