按钮状态转换
设备中应该会发彺某些按钮状态转换。 支持悬停的设备必须在其描述符中包含“In-range”和“Tip”用法。
下表中列出了这些设备的转换。
事件 | 按钮状态 |
---|---|
设备进入范围 | In-range=on; Tip=off |
设备与数字化器表面接触 | In-range=on; Tip=on |
触点在数字化器表面上移动 | In-range=on; Tip=on |
触点脱离数字化器表面 | In-range=off; Tip=off |
触点超出范围 | In-range=off; Tip=off |
注意:为“范围外”事件报告的 X 和 Y 坐标必须与在检测到“范围外”事件之前最后一个“范围内”事件报告的坐标匹配。 对于设备很快“超出范围”的情况,即在同一扫描中检测到“向上”和“范围外”,则需要报告事件和数据包。 一个用于“向上”,另一个用于“范围外”。
不支持悬停的设备不需要在其描述符中包含“In-range”用法。 下表中列出了这些设备的转换。
事件 | 按钮状态 |
---|---|
设备与数字化器表面接触 | Tip=on |
触点在数字化器表面上移动 | In-range=on; Tip=on |
触点脱离数字化器表面 | In-range=off; Tip=off |
注意:在手指从数字化器表面抬离时报告的 X 和 Y 坐标与为检测到的最后一个“移动”数据包报告的坐标必须相同。
下表中提供了支持橡皮擦和反转用法的触笔设备的转换。 只有这些是有效状态。 任何其他状态都可能会被 Windows 拒绝。
事件 | 按钮状态 |
---|---|
触笔尖端正在悬停 | In-range=on; Tip=off; Inverted=off; Eraser=off |
触笔尖端在表面上 | In-range=on; Tip=on; Inverted=off; Eraser=off |
触笔尖端离开表面再次悬停 | In-range=on; Tip=off; Inverted=off; Eraser=off |
尖端超出范围 | In-range=off; Tip=off; Inverted=off; Eraser=off |
触笔的橡皮擦端正在悬停 | In-range=on; Tip=off; Inverted=on; Eraser=off |
触笔的橡皮擦端在表面上 | In-range=on; Tip=off; Inverted=off; Eraser=on |
触笔的橡皮擦端离开表面再次悬停 | In-range=on; Tip=off; Inverted=on; Eraser=off |
橡皮擦超出范围 | In-range=off; Tip=off; Inverted=off; Eraser=off |