要将 OpenCV 窗口移动到 MFC 窗口的中间位置,可以按照以下步骤进行操作:

  1. 获取 MFC 窗口的位置和大小信息。可以使用 MFC 中的 GetWindowRect 函数获取 MFC 窗口的位置和大小信息。

  2. 计算 OpenCV 窗口的新位置。将 MFC 窗口的位置和大小信息与 OpenCV 窗口的大小进行计算,以确定 OpenCV 窗口的新位置。例如,可以将 OpenCV 窗口的左上角坐标设置为 MFC 窗口的左上角坐标加上 MFC 窗口宽度的一半减去 OpenCV 窗口宽度的一半,将 OpenCV 窗口的右下角坐标设置为 MFC 窗口的左上角坐标加上 MFC 窗口高度的一半减去 OpenCV 窗口高度的一半。

  3. 移动 OpenCV 窗口到新位置。使用 OpenCV 中的 moveWindow 函数将 OpenCV 窗口移动到计算得到的新位置。

下面是一个示例代码片段,展示了如何将 OpenCV 窗口移动到 MFC 窗口的中间位置:

// 获取 MFC 窗口的位置和大小信息
CRect mfcRect;
GetWindowRect(&mfcRect);

// 获取 OpenCV 窗口的位置和大小信息
cv::Rect opencvRect = cv::getWindowImageRect('OpenCV Window');

// 计算 OpenCV 窗口的新位置
int new_x = mfcRect.left + (mfcRect.Width() - opencvRect.width) / 2;
int new_y = mfcRect.top + (mfcRect.Height() - opencvRect.height) / 2;

// 移动 OpenCV 窗口到新位置
cv::moveWindow('OpenCV Window', new_x, new_y);

请注意,上述示例代码中的 'OpenCV Window' 是 OpenCV 窗口的名称,您需要根据实际情况修改为您在创建 OpenCV 窗口时指定的名称。

OpenCV 窗口居中显示在 MFC 窗口

原文地址: https://www.cveoy.top/t/topic/0eo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录