Это уже обсуждалось here:
IplImage* img=cvLoadImage("sample.jpg",3); // for example
HDC hdc = picturebox.GetDC()->m_hDC;
char m_chBmpBuf[2048];
BITMAPINFO *m_pBmpInfo =0;
m_pBmpInfo = (BITMAPINFO *)m_chBmpBuf;
m_pBmpInfo->bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
m_pBmpInfo->bmiHeader.biWidth = img->width;
m_pBmpInfo->bmiHeader.biHeight = -img->height;
m_pBmpInfo->bmiHeader.biBitCount= 24;
m_pBmpInfo->bmiHeader.biPlanes = 1;
m_pBmpInfo->bmiHeader.biCompression = BI_RGB;
m_pBmpInfo->bmiHeader.biSizeImage = 0;
m_pBmpInfo->bmiHeader.biXPelsPerMeter = 0;
m_pBmpInfo->bmiHeader.biYPelsPerMeter = 0;
m_pBmpInfo->bmiHeader.biClrUsed = 0;
m_pBmpInfo->bmiHeader.biClrImportant = 0;
StretchDIBits(hdc, 0, 0, img->width, img->height,
0, 0, img->width, img->height,
img->imageData, m_pBmpInfo,
DIB_RGB_COLORS, SRCCOPY);
Как я люблю Google! – karlphillip
извините, но он не работает. HDC hdc = picturebox.GetDC() -> m_hDC; Я не могу сделать это в C++, я пробовал этот способ HANDLE handle = (HANDLE) this-> PbBoxImg-> Handle.ToPointer(); // ToInt32(); \t \t HWND hWnd = (HWND) & рукоятка; теперь я не получаю ошибок, но ничего не отображается в окне изображения \t \t HDC hdc1 = GetDC (hWnd); – andrea
Я посмотрю в выходные дни. Сейчас у меня нет Windows. – karlphillip