支持多点触控数字化器驱动程序中的用法 (Windows 7)
在 Windows 触控的上下文中,多点触控是指对两个或两个以上的可跟踪触点的支持。 本主题概述了多点触控数字化器驱动程序的必需和可选用法。 如果数字化器设备只支持单个触点,请参阅支持触控数字化器驱动程序中的用法。
用法标识符值在 HID 1.11 的设备类定义中定义。
必需的和可选的 HID 用法
多点触控数字化器的报告描述符必须指定设备是一个 HID 触摸屏(页面为 0x0D,用法为 0x04)。
除了现有的 HID 触控用法外,多点触控数字化器驱动程序还必须实现以下用法:
X (page 0x01, usage 0x30) 和 Y (page 0x01, usage 0x31)
触点标识符(页面为 0x0D,用法为 0x51)
提示切换 (page 0x0D, usage 0x42)
范围内 (page 0x0D, usage 0x32)
触点计数最大值(页面为 0x0D,用法为 0x55)
以下用法是可选的,但如果数字化器硬件支持,多点触控数字化器驱动程序应实现这些用法。 这些用法在 Windows Vista 时间范围内已获认可:
置信度(页面为 0x0D,用法为 0x47)
宽度和高度(页面为 0x0D,用法为 0x48 和 0x49)
压力 (page 0x0D, usage 0x30)
用于支持多点触控的 HID 添加项
HID 用法表定义了数字化器中多点触控输入的以下用法。 Windows 7 支持这些多点触控用法,供应商应该在设备和驱动程序中实现它们。
名称 | 说明 | 页 | 类型 | ID |
---|---|---|---|---|
触点标识符 |
触点标识符 |
数字化器 |
动态值 (DV) |
0x51 |
配置 |
配置 |
数字化器 |
集合应用程序 (CA) |
0x0E |
设备模式 |
输入模式 |
数字化器 |
DV |
0x52 |
设备设置 |
设备设置 |
数字化器 |
集合逻辑 (CL) |
0x23 |
设备标识符 |
设备索引 |
数字化器 |
SV/DV |
0x53 |
触点计数 |
实际触点计数 |
数字化器 |
DV |
0x54 |
最大接触点计数 |
支持的最大触点数量 |
数字化器 |
DV |
0x55 |
触点标识符
指定当前触点的标识符。 当设备检测到触点时,标识符必须保持不变。 每个单独的并发触点必须具有唯一标识符。 如果不再检测到触点,则可以重复使用标识符。 如果设备支持“无线”数据包(触点悬停在表面的上方),则标识符必须从检测到触点的时间到超出范围的时间持续存在。 在 EloMT 示例的报告描述符中,此用法的注释为“临时标识符”。
配置
包含功能报告的顶级集合的集合应用程序。
设备模式
一个读/写值功能,用于获取和设置设备的当前输入配置。 在 EloMT 示例中,此用法的注释为“输入模式”。
设备设置
包含设备配置用法(设备标识符和设备模式)的逻辑集合。
设备标识符
可以使用此配置的顶级集合。 如果报告描述符包含多个输入顶级集合,请使用设备标识符。 如需特定于此方案的详细信息,请参阅使用报告描述符来支持功能发现。
触点计数
指定当前数据包中有效触点的数目。 使用并行或混合模式的驱动程序应包括此用法。 不能提供此值的设备对于第一个位置中的所有值都必须使用 NULL,此位置不包含有效的触点信息。
最大触点计数
指定多点触控设备支持的触点总数。 此用法必须包含在多点触控顶级集合中,而不是任何子集合中。
可能会动态查询供应商提供的驱动程序以获取此值。
可以在 WDK 的 EloMT 示例中查看旧用法的示例。