OpenCV-Bilddarstellung auf Zeichenebene im Dialogfenster

jower

Mitglied
Hallo,
ich habe folgendes Problem und hoffe mal, dass einer von Euch mir weiterhelfen kann.

ich möchte ein IplImage (das ist die OpenCV-Bildklasse) unter MFC anzeigen. Genauergesagt will ich, dass das Bild in nur einem Teil eines Dialogs dargestellt wird. Dazu habe ich einmal das Bild m_image und einmal m_imgCtrl als Handle für meine Zeichenebene, um MFC mitzuteilen, wo ich das Bild hinhaben will.

Die Zeichenebene ist eine Resource mit IDC_IMAGE als ID. mein Plan war über
m_imgCtrl.SetDlgCtrlID(IDC_IMAGE);
bzw. über
DDX_Control(pDX, IDC_IMAGE, m_imgCtrl);
die Zuweisung zu machen, nur wird dann das Bild nicht in der Zeichenebene ausgegeben sondern als Hintegrund im Dialogfenster.

Mein Problem scheint also darin zu bestehen, dass die Zuweisung nicht klappt. kann mir da jemand helfen?
Gruß Jower

Code:
class-CMyView:

IplImage *m_image;
CWnd	m_imgCtrl;



Code:
void CMyView::DoDataExchange(CDataExchange* pDX)
{
	DDX_Control(pDX, IDC_IMAGE, m_imgCtrl);
}

void CMyView::OnDraw(CDC* /*pDC*/)
{
	CMyDoc* pDoc = GetDocument();

	ASSERT_VALID(pDoc);
	if (!pDoc)
		return;

	m_imgCtrl.SetDlgCtrlID(IDC_IMAGE);

	CDC *pDC = m_imgCtrl.GetDC();
	CvvImage m_CvvImage;
	RECT rect;
	m_imgCtrl.GetWindowRect(&rect);
	m_image = cvLoadImage( "./test.png", 0);

	m_CvvImage.CopyOf( m_image, 1); 
	m_CvvImage.DrawToHDC( pDC->m_hDC, &rect);

	UpdateData();
}
 
Zurück