如何在ubuntu中使用c ++程序获取窗口的窗口ID?

时间:2013-11-16 05:28:19

标签: c++ ubuntu

我正在使用ubuntu。在终端中通过名称获取窗口窗口id的命令是

xdotool search --name“窗口名称”

但我希望使用c ++程序获得相同的效果。

2 个答案:

答案 0 :(得分:1)

参考文献:

Sending Keystrokes to a X Window

Github

我无法编译自己并检查,但我认为这是按名称搜索窗口的最小代码。

#include <xdo.h>

Window *list;
xdo_search_t search;
unsigned int nwindows;
memset(&search, 0, sizeof(xdo_search_t));
search.max_depth = -1;
search.require = xdo_search::SEARCH_ANY;

search.searchmask |= SEARCH_NAME;
search.winname = "enter name here";

// the context
xdo_t* p_xdo = xdo_new(NULL);
int id = xdo_window_search(p_xdo, &search, &list, &nwindows);

答案 1 :(得分:1)

xdo_window_search我遇到了同样的问题。检查xdo.h中的函数名称,因为更改了名称。