Windows 8获取触摸屏的绝对X Y坐标(无论窗口如何)

时间:2013-05-14 21:53:52

标签: windows winapi touch gesture touchscreen

过去几天我一直在搜索MSDN / Google,但我一直无法找到这个问题的答案。

我希望在Windows 8支持的触摸屏设备上获得触摸/多次触摸的XY坐标。有很多关于如何为特定窗口添加触摸手柄的指南,但我想创建一个依赖于触摸输入的应用程序,无论哪个窗口/应用程序是焦点/被触摸的那个。

基本上,我正在寻找最低级别的触控API。有人有任何想法吗?谢谢!

1 个答案:

答案 0 :(得分:1)

简单的方法是使用“遗留”(Windows 7)API。这样,您就会收到触摸输入作为WM_TOUCH消息。

您在调用GetTouchInputInfo时使用该邮件的lParam。

返回一个TOUCHINPUT结构数组,每个结构都包含一个xy坐标(看起来它可能是无用/虚幻精度的记录,给出精度为百分之一的像素。)

对于新应用,Microsoft建议使用指针输入API。有了这个,您就会收到WM_POINTERDOWNWM_POINTERUPWM_POINTERUPDATE之类的messages。有了这些,消息的lParam包含输入的单个x / y点。有关位置的更完整信息,请致电GetPointerInfo以检索POINTER_INFO结构中输入的坐标。