> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GameInputKind

> GameInputKind

# GameInputKind

有效 GameInput 设备类型的枚举。

## 语法

```cpp theme={null}
enum GameInputKind
{
    GameInputKindUnknown          = 0x00000000,
    GameInputKindControllerAxis   = 0x00000002,
    GameInputKindControllerButton = 0x00000004,
    GameInputKindControllerSwitch = 0x00000008,
    GameInputKindController       = 0x0000000E,
    GameInputKindKeyboard         = 0x00000010,
    GameInputKindMouse            = 0x00000020,
    GameInputKindSensors          = 0x00000040,
    GameInputKindArcadeStick      = 0x00010000,
    GameInputKindFlightStick      = 0x00020000,
    GameInputKindGamepad          = 0x00040000,
    GameInputKindRacingWheel      = 0x00080000,
};
```

## 常量

| 常量 | 说明 |
| - | - |
| GameInputKindUnknown | 表示未知的输入类型。 |
| GameInputKindControllerAxis | 表示来自摇杆的控制器输入。 |
| GameInputKindControllerButton | 表示来自按钮的控制器输入。 |
| GameInputKindControllerSwitch | 表示来自开关的控制器输入。 |
| GameInputKindController | 表示轴、按钮和开关输入的组合。 |
| GameInputKindKeyboard | 表示键盘输入。 |
| GameInputKindMouse | 表示鼠标输入。 |
| GameInputKindSensors | 表示传感器输入。 |
| GameInputKindArcadeStick | 表示街机摇杆输入。 |
| GameInputKindFlightStick | 表示飞行摇杆输入。 |
| GameInputKindGamepad | 表示游戏手柄输入。 |
| GameInputKindRacingWheel | 表示赛车方向盘输入。 |

## 备注

GameInputKind 是标志值，可以组合起来对多个设备进行筛选。
[IGameInput\_GetCurrentReading](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinput/methods/igameinput_getcurrentreading.md) 的参数。
由 [IGameInputReading\_GetInputKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getinputkind.md) 返回。
[GameInputDeviceInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/structs/gameinputdeviceinfo.md) 的成员。

## 要求

**标头：** GameInput.h

[输入 API 概述](https://docs.xbox.com/zh-CN/build/core-features/common/input/overviews/input-overview.md)\
[GameInput](https://docs.xbox.com/zh-CN/reference/input/gameinput/gameinput_members.md)\
[IGameInput\_GetCurrentReading](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinput/methods/igameinput_getcurrentreading.md)\
[IGameInputReading\_GetInputKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getinputkind.md)\
[GameInputDeviceInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/structs/gameinputdeviceinfo.md)

## 版本历史

| 版本 | 变更 |
| - | - |
| **v3** | **移除** `GameInputKindUiNavigation` (0x01000000) 和 `GameInputKindRawDeviceReport` (0x00000001)。 |
| **v2** | **新增** `GameInputKindSensors` (0x00000040)。 |
| **v1** | **移除** `GameInputKindRawDeviceReport` (0x00000001)、`GameInputKindTouch` (0x00000100) 和 `GameInputKindMotion` (0x00001000)。 |
| **v0** | 引入。 |

## 附录：以前的版本

### v0

```cpp theme={null}
enum GameInputKind
{
    GameInputKindUnknown          = 0x00000000,
    GameInputKindRawDeviceReport  = 0x00000001,
    GameInputKindControllerAxis   = 0x00000002,
    GameInputKindControllerButton = 0x00000004,
    GameInputKindControllerSwitch = 0x00000008,
    GameInputKindController       = 0x0000000E,
    GameInputKindKeyboard         = 0x00000010,
    GameInputKindMouse            = 0x00000020,
    GameInputKindTouch            = 0x00000100,
    GameInputKindMotion           = 0x00001000,
    GameInputKindArcadeStick      = 0x00010000,
    GameInputKindFlightStick      = 0x00020000,
    GameInputKindGamepad          = 0x00040000,
    GameInputKindRacingWheel      = 0x00080000,
    GameInputKindUiNavigation     = 0x01000000,
};
```

### v1

```cpp theme={null}
enum GameInputKind
{
    GameInputKindUnknown          = 0x00000000,
    GameInputKindControllerAxis   = 0x00000002,
    GameInputKindControllerButton = 0x00000004,
    GameInputKindControllerSwitch = 0x00000008,
    GameInputKindController       = 0x0000000E,
    GameInputKindKeyboard         = 0x00000010,
    GameInputKindMouse            = 0x00000020,
    GameInputKindArcadeStick      = 0x00010000,
    GameInputKindFlightStick      = 0x00020000,
    GameInputKindGamepad          = 0x00040000,
    GameInputKindRacingWheel      = 0x00080000,
    GameInputKindUiNavigation     = 0x01000000,
};
```

### v2

```cpp theme={null}
enum GameInputKind
{
    GameInputKindUnknown          = 0x00000000,
    GameInputKindControllerAxis   = 0x00000002,
    GameInputKindControllerButton = 0x00000004,
    GameInputKindControllerSwitch = 0x00000008,
    GameInputKindController       = 0x0000000E,
    GameInputKindKeyboard         = 0x00000010,
    GameInputKindMouse            = 0x00000020,
    GameInputKindSensors          = 0x00000040,
    GameInputKindArcadeStick      = 0x00010000,
    GameInputKindFlightStick      = 0x00020000,
    GameInputKindGamepad          = 0x00040000,
    GameInputKindRacingWheel      = 0x00080000,
    GameInputKindUiNavigation     = 0x01000000,
};
```


## Related topics

- [GetInputKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getinputkind.md)
- [IGameInput::CreateAggregateDevice](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinput/methods/igameinput_createaggregatedevice.md)
- [GetSequenceNumber](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getsequencenumber.md)
- [IGameInput::GetNextReading](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinput/methods/igameinput_getnextreading.md)
- [IGameInput::GetPreviousReading](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinput/methods/igameinput_getpreviousreading.md)
