Share via


Método IDXGIOutput::GetDisplayModeList (dxgi.h)

[A partir do Direct3D 11.1, recomendamos não usar mais GetDisplayModeList para recuperar o modo de exibição correspondente. Em vez disso, use IDXGIOutput1::GetDisplayModeList1, que dá suporte ao modo de exibição estéreo.]

Obtém os modos de exibição que correspondem ao formato solicitado e outras opções de entrada.

Sintaxe

HRESULT GetDisplayModeList(
                  DXGI_FORMAT    EnumFormat,
                  UINT           Flags,
  [in, out]       UINT           *pNumModes,
  [out, optional] DXGI_MODE_DESC *pDesc
);

Parâmetros

EnumFormat

Tipo: DXGI_FORMAT

O formato de cor (consulte DXGI_FORMAT).

Flags

Tipo: UINT

Opções para os modos a serem incluídos (consulte DXGI_ENUM_MODES). DXGI_ENUM_MODES_SCALING precisa ser especificado para expor os modos de exibição que exigem dimensionamento. Os modos centralizados, que não exigem dimensionamento e correspondem diretamente à saída de exibição, são enumerados por padrão.

[in, out] pNumModes

Tipo: UINT*

Defina pDesc como NULL para que pNumModes retorne o número de modos de exibição que correspondem ao formato e às opções. Caso contrário, pNumModes retornará o número de modos de exibição retornados no pDesc.

[out, optional] pDesc

Tipo: DXGI_MODE_DESC*

Um ponteiro para uma lista de modos de exibição (consulte DXGI_MODE_DESC); defina como NULL para obter o número de modos de exibição.

Valor retornado

Tipo: HRESULT

Retorna um dos DXGI_ERROR a seguir. É raro, mas possível, que os modos de exibição disponíveis possam ser alterados imediatamente após chamar esse método; nesse caso, DXGI_ERROR_MORE_DATA é retornado (se não houver espaço suficiente para todos os modos de exibição).
Se GetDisplayModeList for chamado de uma sessão de Serviços de Área de Trabalho Remota (anteriormente sessão de Serviços de Terminal), DXGI_ERROR_NOT_CURRENTLY_AVAILABLE será retornado.

Comentários

Em geral, ao alternar do modo de janela para tela inteira, uma cadeia de troca escolhe automaticamente um modo de exibição que atenda (ou exceda) a resolução, a profundidade de cor e a taxa de atualização da cadeia de troca. Para exercer mais controle sobre o modo de exibição, use essa API para sondar o conjunto de modos de exibição validados em relação aos recursos de monitor ou todos os modos que correspondem à área de trabalho (se as configurações da área de trabalho não forem validadas no monitor).

Conforme mostrado, essa API foi projetada para ser chamada duas vezes. Primeiro para obter o número de modos disponíveis e segundo para retornar uma descrição dos modos.


UINT num = 0;
DXGI_FORMAT format = DXGI_FORMAT_R32G32B32A32_FLOAT;
UINT flags         = DXGI_ENUM_MODES_INTERLACED;

pOutput->GetDisplayModeList( format, flags, &num, 0);

...

DXGI_MODE_DESC * pDescs = new DXGI_MODE_DESC[num];
pOutput->GetDisplayModeList( format, flags, &num, pDescs);
      

Requisitos

   
Plataforma de Destino Windows
Cabeçalho dxgi.h
Biblioteca DXGI.lib

Confira também

IDXGIOutput