您的位置:首页 > 编程语言

编程指南:选择使用Windows Touch的适当方法

2014-06-10 11:30 399 查看
选择使用Windows Touch的适当方法
        本节介绍了Windows Touch的不同使用方法。

        可以通过各种方式使用Windows Touch功能来增强应用程序。在采用某种方法之前,应考虑需要利用应用程序执行的操作。以下方案是Windows Touch的典型方案:

        ○ 您希望应用程序的行为与其在旧版Windows中的行为相同,但希望Windows Touch消息的行为一致。

        ○ 您希望应用程序中支持自定义对象旋转、移动、平移或缩放。

        ○ 您希望应用程序具有针对Windows Touch笔势的详细解释,或希望应用程序解释针对专为Windows Touch输入优化的应用程序的多点触控。

        ○ 您希望一个使用RealTimeStylus对象的应用程序,并希望使用Windows Touch功能增强该应用程序。

您希望应用程序的行为与其在旧版Windows中的行为相同

        在Windows 7中,默认情况下,应用程序会生成启用Windows Touch功能的消息。例如,平移笔势会触发WM_*SCROLL消息。除平移支持之外,Windows 7中的默认WM_GESTURE处理程序还支持边界反馈、缩放以及按住并点击。边界反馈也是通过旧版支持启用的。有关笔势如何映射到消息的更多信息,请参见Windows Touch笔势概述。只需要此基本功能的开发人员无需直接使用Windows Touch API。

        注意:自定义滚动条处理程序必须支持对WM_VSCROLL消息的SM_THUMBPOSITION请求,并且必须支持对WM_HSCROLL消息的SB_LINELEFT清河SB_LINERIGHT请求。

        ○ 对使用滚动条进行性平移的旧版支持部分介绍了如何确保应用程序在Windows 7中的行为与用户预期的行为相同。

您需要自定义对象旋转、移动、平移或缩放支持

        如果您需要对触摸的有限支持,而Windows 7提供的默认行为无法满足应用程序的需求,则可以使用笔势来增强应用程序。通过使用笔势,可以通过处理WM_GESTURE消息来解释笔势命令。有关笔势的更多信息,请参见Windows Touch笔势部分。如果应用程序只需要对高精度旋转、增强的缩放或单指平移的支持,则最好是使用笔势进行Windows Touch开发。除了解释笔势消息之外,还可以选择支持边界反馈。有关边界反馈的更多信息,请参见Windows
Touch编程参考的边界反馈部分。在Windows 7中,命令提示符和Internet Explore将使用边界反馈和笔势。

        ○ 改进单指平移体验部分说明如何通过处理WM_GESTURE消息来自定义平移体验。

您需要精细的笔势解释或针对多个触控点的自定义处理

        如果你需要的笔势控制比WM_GESTURE消息提供的笔势控制更加精细,或者你需要解释针对多个对象的多个笔势,则应使用操作处理器。操作处理器实质上是笔势的超集。若要使用操作处理器,你需要针对将原始触控数据传递到的操作事件接收器。

        如果除了解释笔势之外,你还需要简单的对象物理学原理,则应将延时处理器与操作处理器结合使用。延时处理器通过在操作完成时从操作处理器中获取速度值,从而与操作处理器一起工作。

        如果需要解释应用程序中的多个触控点,则应为WM_TOUCH消息创建消息处理程序。

        ○ Windows Touch输入部分介绍了如何解释WM_TOUCH消息。

        ○ 检测和跟踪多个触控点部分演示如何创建解释多个输入的简单应用程序。

        ○ 操作和延时一节介绍了如何启用使用Windows Touch的最灵活方法。

您需要启用对使用RealTimeStylus的应用程序的Windows Touch输入

        如果你需要启用对Tablet PC平台上的多个触控点的输入,则必须实现解释Windows Touch数据的自定义RealTimeStylus插件。Microsoft引入了ITablet3和IRealTimeStylus3接口以在RealTimeStylus插件中启用来自多个触控点的输入。这些接口简化了扩展RealTimeStylus插件以支持多个触控点这一过程。

        若要检查是否启用了对多个触控点的支持,请调用IsMultiTouch。若要检查支持的触控点数目,请调用GetMaximumCursors。若要启用或禁用多触控点支持,情调用MultiTouchEnabled。

        注意:如果未在RealTimeStylus中启用多个触控点,则将收到笔试消息(如平移或缩放)。

http://msdn.microsoft.com/zh-cn/library/windows/desktop/dd562100(v=vs.85).aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息