X 下的鼠标滚轮消息的处理
今天午休的时候,抽了几分钟解决我们的游戏 client engine 在 X Window 下无法处理鼠标滚轮事件的问题。
可能这年头直接写代码处理 XEvent 的程序员不多,我 google 了一下,没有找到详细的文档。不过我想这不会是大问题,没有资料就直接看 .h 文件好了。
打开 Xlib.h 通读了一遍,发现没有什么 event 结构是跟滚轮有关的。又绕回自己的程序试了一下,原来,X 下没有特别为鼠标滚轮做单独的消息。(Windows 下则有对应的 WM_MOUSEWHEEL
)
取而代之的是,鼠标的前滚和后滚被映射到了鼠标的第 4 和第 5 个按键的事件上了。(这个其实可以在 X 的配置文件里配置,相关资料很容易 google 到。)那么,支持鼠标滚轮事件的处理,只需要在 ButtonPress 做处理即可。
Comments
Posted by: 刘星龙 | (9) April 25, 2008 09:59 PM
Posted by: kk | (8) April 5, 2008 04:34 PM
Posted by: 555 | (7) April 3, 2008 06:42 PM
Posted by: Cloud | (6) April 3, 2008 05:39 PM
Posted by: script | (5) April 3, 2008 02:03 PM
Posted by: Cloud | (4) March 31, 2008 10:30 PM
Posted by: rae | (3) March 31, 2008 09:35 PM
Posted by: 知名不具 | (2) March 31, 2008 12:11 PM
Posted by: yue169 | (1) March 28, 2008 09:13 PM