如何让cv :: namedWindow成为OpenCV2的焦点?

时间:2013-01-10 20:25:46

标签: c++ opencv

以下是我的应用的简化版本:

Mat img = imread("./picture.png");
namedWindow("Picture", CV_WINDOW_AUTOSIZE);
imshow("Picture", img);
waitKey(0);

当我执行已编译的应用程序时(在带有OpenCV 2.4.3的MacOS 10.8.2上),窗口在终端窗口下面打开并且不在焦点上。所以,我必须先点击(或标签),然后点击任意键才能完成waitKey

是否可以自动将cv::namedWindow置于焦点?

1 个答案:

答案 0 :(得分:0)

您可以枚举所有窗口并将其标题与您自己的窗口标题进行比较。我不确定如何在MacOS中执行此操作,但在Windows下,有一个API可以为您完成此任务:EnumWindows()。

由于OpenCV 2.x仍然支持许多旧的C风格函数,你可以检查是否仍然包含cvGetWindowHandle()。