作者iqk168 (冬瓜)
看板C_and_CPP
标题[问题] MFC对话框
时间Tue Nov 3 16:01:32 2009
将一个视讯画面
移到MFC对话框中
之後 我的对话框的介面就无法移动
不知道是哪里出了问题
这是我的CODE
void CTest1Dlg::OnStart()
{
// TODO: Add your control notification handler code here
CvCapture* capture = NULL;
capture = cvCreateCameraCapture(0);//webcam
IplImage* frame = NULL; //cvCreateImage();
for(;;)
{
frame = cvQueryFrame(capture);
if(!frame)
break;
DrawPicToHDC(frame, IDC_STATIC_PIC);
int c = cvWaitKey(10);
if(c == 27)
break;
}
cvReleaseCapture(&capture);
}
void CTest1Dlg::DrawPicToHDC(IplImage *img, UINT ID)
{
CDC *pDC = GetDlgItem(ID)->GetDC();
HDC hDC= pDC->GetSafeHdc();
CRect rect;
GetDlgItem(ID)->GetClientRect(&rect);
CvvImage cimg;
cimg.CopyOf(img);
cimg.DrawToHDC(hDC,&rect);
ReleaseDC(pDC);
}
完整的程式:
http://www.badongo.com/cn/file/18192829#
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.127.182.4
1F:推 hichcock:咬死了...要不要另外生个 thread 来取影像呢?? 11/03 22:06
2F:→ WPC001:不要把Windows Message Loop给吃光... 那种做法很不智 11/03 23:19
3F:推 iwayne:哇。for(;;)耶.. 建议生个thread来处理,否则UI会卡死.. 11/04 00:21
4F:→ tomnelson:这大概是实验性质的程式写法...看到for(;;)我笑了 :) 11/04 15:01