跳转到主要内容
检索设备的游戏手柄属性,例如其支持的按钮布局及其控件的标签。

语法

参数

info   _Out_
类型:GameInputGamepadInfo*
指向 GameInputGamepadInfo 结构的指针,该结构接收设备的游戏手柄属性。如果设备不支持游戏手柄输入,则该结构的每个成员都设置为零。

返回值

类型:bool 如果设备支持游戏手柄输入并且已填充 info,则为 true;否则为 false。

备注

GetGamepadInfo 方法将设备的游戏手柄属性复制到调用方提供的结构中。当 GetSupportedInput 返回的值包含 GameInputKindGamepad 时,设备支持游戏手柄输入。如果设备不支持游戏手柄输入,GetGamepadInfo 会将 info 零初始化并返回 false。 supportedLayout 成员是 GameInputGamepadButtons 标志的组合,用于标识设备具有哪些标准游戏手柄按钮。各标签成员以 GameInputLabel 值的形式描述印在相应控件上的标记,以便你在 UI 中显示匹配的提示。extraButtonCount 和 extraAxisCount 成员报告设备在标准游戏手柄映射之外还具有多少个控制器按钮和轴;使用 GetExtraButtonIndexes 和 GetExtraAxisIndexes 在读数的控制器状态中找到它们。游戏手柄状态通过 IGameInputReading::GetGamepadState 从读数中读取。 此方法返回的属性在设备的生存期内是固定的,因此你可以只查询一次(例如在设备连接时)并缓存结果。 以下示例演示如何查询设备的游戏手柄属性。
在 GameInput v3 及更早版本中,此信息可从 IGameInputDevice::GetDeviceInfo 返回的 GameInputDeviceInfo 结构的 gamepadInfo 成员中获取。

要求

头文件: GameInput.h 库: gameinput.lib 支持的平台: Windows、XBOX One 系列主机和 XBOX Series 主机

另请参阅

GameInput 概述
GameInputGamepadInfo
GetSupportedInput
GameInputKind
GameInputGamepadButtons
GameInputLabel
IGameInputReading::GetGamepadState
IGameInputDevice

版本历史

最后修改于 2026年11月6日