8

「X」ボタンでアプリケーションを閉じる方法についての参照が見つかりません。XCBを使用してプログラミングしていて、「X」ボタンでプログラムを閉じたい。私はそれについて何も見ませんでした。ボタンを押して閉じる方法を知っています。また、「X」ボタンを押すと、ウィンドウは閉じているように見えますが、閉じていません。

4

1 に答える 1

17

私も少し前にこのトピックに苦労しました。

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);

イベントループで、client_messageをcookie2と比較します

case XCB_CLIENT_MESSAGE:
{
    if((*(xcb_client_message_event_t*)event).data.data32[0] == (*reply2).atom) ...
}
于 2012-10-06T16:04:20.707 に答える