我正在帮助在windows8平板电脑上实现一个使用psycopy的实验。似乎不可能通过psycopy、pyglet或PyGame界面直接访问触摸事件。在
我发现的大多数其他来源都提到使用鼠标移动事件来代替触摸事件。这对录制位置很好,但对于录制时间,它对我们不起作用。我们希望收集触摸开始的时间,而鼠标事件在触摸结束时出现。在
有没有人知道一种方法可以做到这一点,不管是在《神经病》中,还是在实验中引入另一个库?在
更新:记录ioHub鼠标事件,看起来按下和释放鼠标事件都是在触摸结束时发送的。这是有意义的,因为在这一点上,操作系统确定触摸不是刷卡。(此外,它还将根据触摸的持续时间来决定是左击还是右击)。在
我用一个钩子把它挂到WndProc中,它不漂亮,但它很管用。解决办法,对于子孙后代:
https://github.com/alisdt/pywmtouchhook
小结:
我使用ctypes和pywin32的组合(不幸的是,这两种方法都不能单独完成这项工作)来注册目标HWND以接收触摸消息,并替换其WndProc,将所有非接触消息传递给原始的WndProc。在
相关问题 更多 >
编程相关推荐