getPointerPenInfoHistory 函数 (winuser.h)
获取与 PT_PEN) 类型的 指定指针 (的当前消息(如果有)关联的基于笔的信息(如果有)。 最近的输入包含在返回的历史记录中,与 GetPointerPenInfo 函数返回的最新输入相同。
语法
BOOL GetPointerPenInfoHistory(
[in] UINT32 pointerId,
[in, out] UINT32 *entriesCount,
[out, optional] POINTER_PEN_INFO *penInfo
);
参数
[in] pointerId
要检索其信息的指针的标识符。
[in, out] entriesCount
指向变量的指针,该变量指定 penInfo 指向的缓冲区中的结构计数。 如果 GetPointerPenInfoHistory 成功, 则 entriesCount 将更新为可用结构的总计数。 可用结构的总计数与调用 GetPointerPenInfo 返回的POINTER_PEN_INFO结构中的 historyCount 字段相同。
[out, optional] penInfo
要接收指针信息的 POINTER_PEN_INFO 结构的数组的地址。 如果 *entriesCount 为零,此参数可以为 NULL。
返回值
如果函数成功,则返回值为非零。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
如果应用程序处理指针输入消息的速度不如生成时那样快,可能会合并某些移动。 当应用程序收到PT_PEN) 消息类型的可合并指针 ( 时,它可以使用 GetPointerPenInfoHistory 函数检索合并到消息中的所有单独输入(如果有)的信息。 请注意,检索的信息与调用线程最近检索的指针消息相关联。 调用线程检索其下一条消息后,与上一条消息关联的信息可能不再可用。
检索到的信息按相反的时间顺序显示,返回的数组的第一行中包含最新的条目。 最新的条目与 GetPointerPenInfo 函数返回的条目相同。
如果提供的缓冲区中的行计数不足以保存所有可用的历史记录条目,则此函数会成功,缓冲区包含最新条目和包含可用条目总数的 *entriesCount 。
如果指针帧不包含指定指针以外的其他指针,则此函数将成功并仅返回指定指针的信息。
如果与指针帧关联的信息不再可用,此函数将失败,最后一个错误设置为 ERROR_NO_DATA。
如果调用线程不拥有最初传递输入的窗口 (或将消息转发到的) 指针消息已传递到的位置,则此函数将失败,最后一个错误设置为 ERROR_ACCESS_DENIED。
如果指定的指针不是 PT_PEN 类型,则此函数将失败,最后一个错误设置为 ERROR_DATATYPE_MISMATCH。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
Library | User32.lib |
DLL | User32.dll |