Xlib提供了一系列返回特定事件的函数,如XIfEvent()
,XMaskEvent()
,XWindowEvent()
,XCheckTypedEvent()
(及其"Check")版本)…
XCB呢?是否有办法只获得事件队列中的特定事件?
xcb_wait_for_special_event()
似乎是这样的功能之一,但是没有详细的手册,所以我不知道如何使用。
我试着阅读xlib和xcb的源代码,但是超出了我的能力范围。
使用libxcb,没有"花哨的事件队列管理"。您必须自己在循环中调用xcb_poll_for_event()
并将事件放入您自己的事件队列中。然后你可以按照你想要的顺序处理队列中的事件,如果你想的话,可以优先处理一些事件。