OpenCv显示窗口移植到MFC
2013-05-09 22:07
330 查看
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中一样。
但是很多时候我们要将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中一样。
相关文章推荐
- 使用GDI+可以方便的把OpenCV的图像矩阵类型数据显示在MFC的窗口中
- OpenCV打开摄像机并显示在MFC窗口上
- opencv2 在mfc窗口中显示关于cv::Mat 的解决方法
- 基于MFC单文档下调用opencv库并将图片效果显示在单文档窗口
- 用OpenCV将图像显示在MFC的窗口中
- 将Opencv2的Mat类型数据显示到MFC窗口上
- 彻底解决显示Opencv中Mat图像到Mfc窗口问题
- MFC窗口视频显示方法--OpenCV VFW模式
- 如何让OpenCV的图片显示在MFC窗口上
- [转]如何将OpenCV中的IplImage显示在MFC的窗口中
- MFC使用OpenCV在文档窗口中显示图像(支持多图片格式)
- 如何让OpenCV的图片显示在MFC窗口上
- MFC窗口视频显示方法--OpenCV DirectShow模式
- 如何让OpenCV的图片显示在MFC窗口上
- 如何将OpenCV中的IplImage显示在MFC的窗口中
- 在mfc中利用opencv打开摄像头并显示在窗口上
- OPENCV Mat图像在MFC PictureControl显示
- 在MFC上显示OPENCV
- opencv一个窗口显示多幅图像
- MFC窗口程序显示命令行输出窗口的方法