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

# GameInputButtonMapping

> GameInputButtonMapping

# GameInputButtonMapping

描述按鈕如何對應至控制器。

## 語法

```cpp theme={null}
struct GameInputButtonMapping {
    GameInputElementKind controllerElementKind;
    uint32_t             controllerIndex;

    // When the button is mapped from an axis
    bool isInverted;

    // Button mapped from button only needs the index

    // When the button is mapped from a switch
    GameInputSwitchPosition switchPosition;
};
```

### 成員

*controllerElementKind*<br />
類型：[GameInputElementKind](/zh-TW/reference/input/gameinput/enums/gameinputelementkind)

按鈕所對應之來源控制器元素的種類。

*controllerIndex*<br />
類型：uint32\_t

按鈕所對應之來源控制器元素的索引。此索引以零為起始，且相對於相同種類的其他元素。無論按鈕是從軸、另一個按鈕或開關對應而來，此索引都適用。

*isInverted*<br />
類型：bool

表示軸值在轉換為按鈕值之前是否會反轉。例如，如果軸提供的值範圍是 \[0 - 1]，其中 0 為未按下、1 為按下，則 1 應代表未按下、0 代表按下。只有當按鈕是從軸對應而來時，此成員才有效。

*switchPosition*<br />
類型：[GameInputSwitchPosition](/zh-TW/reference/input/gameinput/enums/gameinputswitchposition)

按鈕所對應之來源開關的位置。當指定開關在此開關位置上被按下時，按鈕即視為已按下。只有當按鈕是從開關對應而來時，此成員才有效。

## 備註

此對應資訊會分享由裝置或通訊協定所提供的內部資訊，說明其預期針對指定輸入如何被解譯。在某些情況下，我們不會分享這些資訊的全部內容，而是分享與產生指定輸入之對應最相關的資訊。

對於按鈕，我們允許從軸、另一個按鈕或開關進行對應。來源輸入由 *controllerElementKind* 指定。對於所有來源元素種類，來源輸入的索引由 *controllerIndex* 指定。接著可根據 *controllerElementKind* 值，將此索引與控制器的軸、按鈕或開關搭配使用。

## 另請參閱

[GameInput 概觀](/zh-TW/build/core-features/common/input/overviews/input-overview)<br />

[GameInput](/zh-TW/reference/input/gameinput/gameinput_members)

## 版本歷程記錄

| 版本 | 變更 |
| - | - |
| **v3** | 推出。 |


## Related topics

- [GameInputButtonMapping](/reference/input/gameinput/structs/gameinputbuttonmapping.md)
- [IGameInputMapper::GetGamepadButtonMapping](/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getgamepadbuttonmappinginfo.md)
- [IGameInputMapper::GetRacingWheelButtonMappingInfo](/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getracingwheelbuttonmappinginfo.md)
- [IGameInputMapper::GetArcadeStickButtonMappingInfo](/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getarcadestickbuttonmappinginfo.md)
- [IGameInputMapper::GetFlightStickButtonMappingInfo](/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getflightstickbuttonmappinginfo.md)
