Freigeben über


IDXGIOutput::GetDisplayModeList-Methode (dxgi.h)

[Ab Direct3D 11.1 wird empfohlen, GetDisplayModeList nicht mehr zu verwenden, um den entsprechenden Anzeigemodus abzurufen. Verwenden Sie stattdessen IDXGIOutput1::GetDisplayModeList1, der den Stereoanzeigemodus unterstützt.]

Ruft die Anzeigemodi ab, die dem angeforderten Format und anderen Eingabeoptionen entsprechen.

Syntax

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

Parameter

EnumFormat

Typ: DXGI_FORMAT

Das Farbformat (siehe DXGI_FORMAT).

Flags

Typ: UINT

Optionen für einzuschließende Modi (siehe DXGI_ENUM_MODES). DXGI_ENUM_MODES_SCALING muss angegeben werden, um die Anzeigemodi verfügbar zu machen, die eine Skalierung erfordern. Zentrierte Modi, die keine Skalierung erfordern und direkt der Anzeigeausgabe entsprechen, werden standardmäßig aufgezählt.

[in, out] pNumModes

Typ: UINT*

Legen Sie pDesc auf NULL fest, damit pNumModes die Anzahl der Anzeigemodi zurückgibt, die dem Format und den Optionen entsprechen. Andernfalls gibt pNumModes die Anzahl der anzeigemodi zurück, die in pDesc zurückgegeben werden.

[out, optional] pDesc

Typ: DXGI_MODE_DESC*

Ein Zeiger auf eine Liste der Anzeigemodi (siehe DXGI_MODE_DESC); legen Sie auf NULL fest, um die Anzahl der Anzeigemodi abzurufen.

Rückgabewert

Typ: HRESULT

Gibt eine der folgenden DXGI_ERROR zurück. Es ist selten, aber möglich, dass sich die verfügbaren Anzeigemodi unmittelbar nach dem Aufruf dieser Methode ändern können. In diesem Fall wird DXGI_ERROR_MORE_DATA zurückgegeben (wenn nicht genügend Platz für alle Anzeigemodi vorhanden ist).
Wenn GetDisplayModeList von einer Remotedesktopdienste-Sitzung (früher Terminaldienste-Sitzung) aufgerufen wird, wird DXGI_ERROR_NOT_CURRENTLY_AVAILABLE zurückgegeben.

Hinweise

Im Allgemeinen wählt eine Swapchain beim Wechsel vom Fenstermodus zum Vollbildmodus automatisch einen Anzeigemodus aus, der die Auflösung, Farbtiefe und Aktualisierungsrate der Swapchain erfüllt (oder überschreitet). Wenn Sie mehr Kontrolle über den Anzeigemodus haben möchten, verwenden Sie diese API, um den Satz von Anzeigemodi abzufragen, die anhand von Überwachungsfunktionen überprüft werden, oder alle Modi, die dem Desktop entsprechen (wenn die Desktopeinstellungen nicht für den Monitor überprüft werden).

Wie gezeigt, ist diese API so konzipiert, dass sie zweimal aufgerufen wird. Erstens, um die Anzahl der verfügbaren Modi abzurufen, und zweitens, um eine Beschreibung der Modi zurückzugeben.


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);
      

Anforderungen

   
Zielplattform Windows
Kopfzeile dxgi.h
Bibliothek DXGI.lib

Weitere Informationen

IDXGIOutput