WINuser.h) (GESTURECONFIG 结构
获取并设置用于启用手势消息的配置以及此配置的类型。
语法
typedef struct tagGESTURECONFIG {
DWORD dwID;
DWORD dwWant;
DWORD dwBlock;
} GESTURECONFIG, *PGESTURECONFIG;
成员
dwID
将启用或禁用消息的配置类型的标识符。 有关详细信息,请参阅“备注”。
dwWant
要启用的消息。
dwBlock
要禁用的消息。
注解
不可能禁用双指平移并保持单指平移。 必须先为GC_PAN设置所需位,然后才能为GC_PAN_WITH_SINGLE_FINGER_HORIZONTALLY或GC_PAN_WITH_SINGLE_FINGER_VERTICALLY设置它们。
如果通过调用 SetGestureConfig 禁用了惯性,则带有GF_END标志的GID_PAN消息中包含惯性向量。
传递此结构时, dwID 成员包含一组手势的信息。 这决定了其他标志的含义。 如果为平移消息设置标志,它们将不同于为旋转消息设置的标志。
下表指示由 GESTURECONFIG 结构的 dwID 成员支持的手势的各种标识符。 请注意,将 dwID 设置为 0 表示已设置全局手势配置标志。
名称 | 值 | 说明 |
---|---|---|
GID_ZOOM | 3 | 指示缩放手势的配置设置。 |
GID_PAN | 4 | 指示平移手势。 |
GID_ROTATE | 5 | 指示旋转手势。 |
GID_TWOFINGERTAP | 6 | 指示双指点击手势。 |
GID_PRESSANDTAP | 7 | 指示按下和点击手势。 |
当 dwID 设置为 0 时,将使用以下标志。
名称 | 值 | 说明 |
---|---|---|
GC_ALLGESTURES | 0x00000001 | 指示所有手势。 |
当 dwID 设置为 GID_ZOOM 时,将使用以下标志。
名称 | 值 | 说明 |
---|---|---|
GC_ZOOM | 0x00000001 | 指示缩放手势。 |
当 dwID 设置为 GID_PAN 时,将使用以下标志。
名称 | 值 | 说明 |
---|---|---|
GC_PAN | 0x00000001 | 指示所有平移手势。 |
GC_PAN_WITH_SINGLE_FINGER_VERTICALLY | 0x00000002 | 指示用一根手指垂直平移。 |
GC_PAN_WITH_SINGLE_FINGER_HORIZONTALLY | 0x00000004 | 指示用一根手指水平平移。 |
GC_PAN_WITH_GUTTER | 0x00000008 | 将垂直移动限制为主要方向,直到达到阈值以突破排水沟。 |
GC_PAN_WITH_INERTIA | 0x00000010 | 指示在平移手势停止时以惯性平移以平稳缓慢。 |
注意在 SetGestureConfig 中设置GID_PAN标志将影响用于平移的默认笔势处理程序。
不应为相同的标志同时设置 dwWant 和 dwBlock ;这将导致意外行为。
有关平移和旧版平移支持的详细信息,请参阅 Windows 触控手势 ;有关启用和阻止手势的示例,请参阅 SetGestureConfig 。
名称 | 值 | 说明 |
---|---|---|
GC_ROTATE | 0x00000001 | 指示旋转手势。 |
当 dwID 设置为 GID_TWOFINGERTAP 时,将使用以下标志。
名称 | 值 | 说明 |
---|---|---|
GC_TWOFINGERTAP | 0x00000001 | 指示双指点击手势。 |
当 dwID 设置为 GID_PRESSANDTAP 时,将使用以下标志。
名称 | 值 | 说明 |
---|---|---|
GC_PRESSANDTAP | 0x00000001 | 指示按下和点击手势。 |
示例
GESTURECONFIG gc[3];
UINT uiGcs = 3;
ZeroMemory(&gc, sizeof(gc));
gc[0].dwID = GID_ZOOM;
gc[1].dwID = GID_ROTATE;
gc[2].dwID = GID_PAN;
BOOL bResult = GetGestureConfig(hWnd, 0, 0, &uiGcs, gc, sizeof(GESTURECONFIG));
if (!bResult){
DWORD err = GetLastError();
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
标头 | winuser.h (包括 Windows.h) |