Как добавить окно отображения OpenCV как дочернее окно другого окна в приложениях Win32 c ++?

У меня есть фрейм-граббер (Silicon Software), и мне удалось показать захваченные изображения из указателя в буфере памяти с помощью OpenCV.

Теперь я хочу создать приложение (Win32) и разместить окно openCV как дочернее окно основного окна приложения.
У кого-нибудь есть идеи?

4

Решение

Я нашел ответ, это было так легко. Всего пара строк кода.
вот :

cv::namedWindow("test",cv::WINDOW_AUTOSIZE);
hWnd2 = (HWND) cvGetWindowHandle("test");
hParent = ::GetParent(hWnd2);
::SetParent(hWnd2, hParent);
::ShowWindow(hParent, SW_HIDE);
3

Другие решения

если вы хотите собственное окно, возможно, лучше пропустить весь материал хай-хи,
и делать свои собственные блинты.

взгляните на источник cvShowImage (), highgui / src / window_w32.cpp, l 1384, чтобы увидеть, что они здесь делают

2

Не знаю точно, что вы подразумеваете под «дочерним окном», но вы можете получить информацию о пикселях из формата OpenCV IplImage и преобразовать ее в любой формат, который вам нужен для вашего окна.

-1
По вопросам рекламы [email protected]