我正在开发一个简单的Xlib程序,我想拦截所有鼠标事件(动作,按下按钮,释放按钮)。我可能想在某些时候对这些数据做些什么,但是现在,我只是想将这些鼠标事件正确“转发”到正确的窗口(好像我根本没有拦截它们)。
目前,我的一般方法如下:
还有一些细节,但这是基本的想法。我一直在Ubuntu Linux上测试我的程序,它似乎在很多场景下工作(例如,点击最小化,最大化和关闭按钮正常工作)。但是,它不适用于所有情况,例如单击菜单栏项。
总之,我基本上只是希望能够拦截鼠标事件,然后将它们转发到适当的窗口,就好像我根本没有拦截它们一样。使用Xlib执行此操作的正确方法是什么?