> ## 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.

# IGameInputDevice::GetKeyboardInfo

> Recupera as propriedades de teclado do dispositivo, como o tipo de teclado, o layout e o número de teclas.

Recupera as propriedades de teclado do dispositivo, como o tipo de teclado, o layout e o número de teclas.

## Sintaxe

```cpp theme={null}
bool GetKeyboardInfo(
    GameInputKeyboardInfo* info
);
```

### Parâmetros

*info*   \_Out\_\
Tipo: [GameInputKeyboardInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputkeyboardinfo.md)\*

Ponteiro para uma estrutura `GameInputKeyboardInfo` que recebe as propriedades de teclado do dispositivo. Se o dispositivo não oferecer suporte à entrada de teclado, todos os membros da estrutura serão definidos como zero.

### Valor retornado

Tipo: bool

`true` se o dispositivo oferecer suporte à entrada de teclado e *info* tiver sido preenchido; caso contrário, `false`.

## Comentários

O método `GetKeyboardInfo` copia as propriedades de teclado do dispositivo para a estrutura fornecida pelo chamador. Um dispositivo oferece suporte à entrada de teclado quando o valor retornado por [GetSupportedInput](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md) inclui `GameInputKindKeyboard`. Se o dispositivo não oferecer suporte à entrada de teclado, `GetKeyboardInfo` inicializará *info* com zeros e retornará `false`.

A maioria das propriedades de teclado é fixa durante o tempo de vida do dispositivo. A exceção é o membro `layout`, que o GameInput atualiza no local quando o layout de teclado ativo muda (por exemplo, quando o usuário alterna entre idiomas de entrada). Quando o layout muda, o GameInput gera o [GameInputDeviceEvent](https://learn.microsoft.com/en-us/gaming/gdk/docs/reference/input/gameinput/enums/gameinputdeviceevent) `GameInputDeviceEventKeyboardLayoutUpdated` para os retornos de chamada de dispositivo registrados com [IGameInput::RegisterDeviceCallback](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback.md). Chame `GetKeyboardInfo` novamente a partir desse retorno de chamada para ler o novo layout.

O exemplo a seguir mostra como consultar as propriedades de teclado de um dispositivo.

```cpp theme={null}
GameInputKeyboardInfo info;
if (device->GetKeyboardInfo(&info))
{
    uint32_t keyboardLayout = info.layout;
    uint32_t keyCount = info.keyCount;
    // ...
}
```

No GameInput v3 e anteriores, essas informações estavam disponíveis no membro `keyboardInfo` da estrutura [GameInputDeviceInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/structs/gameinputdeviceinfo.md) retornada por [IGameInputDevice::GetDeviceInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceinfo.md).

## Requisitos

**Cabeçalho:** GameInput.h

**Biblioteca:** gameinput.lib

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

## Confira também

[Visão geral do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-overview.md)\
[GameInputKeyboardInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputkeyboardinfo.md)\
[GetSupportedInput](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)\
[GameInputKind](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputkind.md)\
[IGameInput::RegisterDeviceCallback](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback.md)\
[GameInputDeviceEvent](https://learn.microsoft.com/en-us/gaming/gdk/docs/reference/input/gameinput/enums/gameinputdeviceevent)\
[IGameInputReading::GetKeyState](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getkeystate.md)\
[IGameInputDevice](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)

## Histórico de versões

| Versão | Alterações |
| - | - |
| **v4** | Introduzido. |


## Related topics

- [GameInputKeyboardInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputkeyboardinfo.md)
- [IGameInput::RegisterKeyboardLayoutCallback (Preterido)](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/interfaces/igameinput/methods/igameinput_registerkeyboardlayoutcallback.md)
- [IGameInput::RegisterDeviceCallback](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback.md)
- [IGameInputDevice::GetInputReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportinfo.md)
- [IGameInputDevice::GetGamepadInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getgamepadinfo.md)
