Windows 7开发:多点触摸之WM_TOUCH - 本机(动手实验)2011-05-17 MSDN 目标在本动手实验中,我们将学习如何管理手势事件,包括:• 理解使用手势事件操作对象的含义• 检查多点触摸 硬件是否存在及其就绪情况• 从手势 Windows Message 中提取信息系统要求要完成本实验,必须拥有以下工具:• Microsoft Visual Studio 2008 SP1• Windows 7• Windows 7 SDK• 一台多点触摸硬件设备引言要创建多点触摸驱动的应用程序,有 3 种方法可供 选择:“好”、“出色”或“最佳”方法。“好”方法是这些方法中最简单的。设计应用程序用户界面时 应该将触摸能力考虑在内。可以使用大量基于 Win32 的简单工具构建一种自然的 界面,以提供更出色的用户体验。滚动等触摸能力来自于 Win32 控件,无需额外 的工作。例如,现在尝试使用手指滚动您正在阅读的文档!这就是“好 ”方法。“出色”方法让系统接收各种低级触摸事件,并获取系 统对这些事件的探索结果。例如,如果用户在屏幕上做出一个旋转动作,系统将 发出一个带有旋转角度的旋转手势。尽管“出色”方法易于使用,但 它具有自身的局限性。使用手势无法同时实现旋转、平移和缩放。您也无法同时 处理多个基于不同触摸方式的操作。例如,两个用户操作窗口的不同区域。“最佳”方法是读取低级触摸事件,将其作为应用程序的输入。 “Piano”等应用程序或可供用户同时操作的多个滑块等复杂控件都是 不错的例子。运行 MS Paint,从工具箱中选择一个绘制工具,然后使用您的 4 根手指进行绘制(如果硬件支持):

本动手实验将模仿新的 MS Paint 多点触摸绘画特性。我们将使用“最 佳”方法,即读取并使用原始的触摸事件,进行低级 WM_TOUCH Multi- touch 消息解码。