我最近拿到一个显示器,这个设备在触摸的时候总是丢笔,我通过本文的程序测试这个设备是否触摸的按下和抬起不成对
在触摸设备里面,如果用的是微软的 HID 协议,那么需要符合协议才能让 Windows 的软件能使用
关于 HID 协议请看Windows 的 Pen 协议
如果发送的消息里面,只有按下没有抬起,或者反过来,那么软件将会出现丢笔,也就是有时的触摸没反应
我需要在软件里面测试拿到当前触摸几个点,分别的 id 是什么,如果有一个点在抬起之前再次收到按下,那么告诉用户当前存在触摸按下。如果有一个点没有抬起,在我所有手离开触摸设备,发现还有点没有收到抬起,那么告诉用户当前存在触摸点没有抬起
其实在 HID 设备里面,对于按下和移动用的都是 0x07 而对抬起用的是 0x04 详细请看Windows 的 Pen 协议
这个测试工具的源代码请看 github
本文会经常更新,请阅读原文: https://dotnet-campus.github.io//post/WPF-%E6%B5%8B%E8%AF%95%E8%A7%A6%E6%91%B8%E8%AE%BE%E5%A4%87%E5%8F%91%E9%80%81%E8%A7%A6%E6%91%B8%E6%8C%89%E4%B8%8B%E5%92%8C%E6%8A%AC%E8%B5%B7%E4%B8%8D%E6%88%90%E5%AF%B9.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 lindexi (包含链接: https://dotnet-campus.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 。