获取OpenCV中当前活动窗口的句柄

时间:2012-03-16 11:17:38

标签: opencv computer-vision glut

是否有GLUT glutGetWindow()/ glutSetWindow()函数的OpenCV等价物,它允许识别当前活动窗口并从您自己的代码切换?

基本上,我希望能够从所有窗口注册的鼠标回调函数中识别当前活动窗口,并让它为每个窗口调用另一个具有不同参数的处理函数。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:2)

在OpenCV中没有这样做的功能,但cvSetMouseCallback()的签名允许您在每个窗口注册一个回调。

您必须注册单个回调才能实现您需要做的事情。

以下是HIGHGUI模块支持的complete list功能。

另一种(硬核)替代方案是深入了解您正在使用的操作系统的本机API,并搜索实现此目的的方法。问题是这个解决方案不是跨平台的。

答案 1 :(得分:0)

实际上,可以在opencv / highgui / highgui_c.h中找到cvGetWindowHandle(const char * windowname)。在编写此答案之前,此功能一直可用到openCV 4。

我建议您添加

#include <opencv/highgui/highgui_c.h> 

并使用

cvGetWindowHandle(window_name_.c_str())