在如何通过X按钮关闭应用程序方面,我找不到任何参考资料。我正在使用XCB编程,并希望通过“X”按钮关闭程序。我查看了相关文档,但是没有找到相关信息。我知道如何通过按按钮来关闭程序。另外,通过按“X”按钮,窗口似乎关闭了,但实际上并没有。
我之前也曾经在这个主题上苦苦挣扎。
看一下http://marc.info/?l=freedesktop-xcb&m=129381953404497。
关键是要把WM_DELETE_WINDOW的cookie存储在一个单独的cookie中...
xcb_intern_atom_cookie_t cookie2 = xcb_intern_atom(c, 0, 16, "WM_DELETE_WINDOW");
xcb_intern_atom_reply_t* reply2 = xcb_intern_atom_reply(c, cookie2, 0);
在事件循环中,将客户端消息与cookie2进行比较
case XCB_CLIENT_MESSAGE:
{
if((*(xcb_client_message_event_t*)event).data.data32[0] == (*reply2).atom) ...
}