IDXGIOutput1::GetDisplayModeList1-Methode (dxgi1_2.h)
Ruft die Anzeigemodi ab, die dem angeforderten Format und anderen Eingabeoptionen entsprechen.
Syntax
HRESULT GetDisplayModeList1(
DXGI_FORMAT EnumFormat,
UINT Flags,
[in, out] UINT *pNumModes,
[out, optional] DXGI_MODE_DESC1 *pDesc
);
Parameter
EnumFormat
Ein DXGI_FORMAT typisierter Wert für das Farbformat.
Flags
Eine Kombination aus DXGI_ENUM_MODES typisierten Werten, die mithilfe einer bitweisen OR-Operation kombiniert werden. Der resultierende Wert gibt Optionen für die einzuschließenden Anzeigemodi an. Sie müssen DXGI_ENUM_MODES_SCALING angeben, 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
Ein Zeiger auf eine Variable, die die Anzahl der Anzeigemodi empfängt, die GetDisplayModeList1 im Speicherblock zurückgibt, auf den pDesc verweist. 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
Ein Zeiger auf eine Liste von Anzeigemodi; legen Sie auf NULL fest, um die Anzahl der Anzeigemodi abzurufen.
Rückgabewert
Gibt einen der im Thema DXGI_ERROR beschriebenen Fehlercodes 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).
Hinweise
GetDisplayModeList1 wird von GetDisplayModeList aktualisiert, um eine Liste von DXGI_MODE_DESC1 Strukturen zurückzugeben, bei denen es sich um aktualisierte Modusbeschreibungen handelt. GetDisplayModeList verhält sich so, als würde GetDisplayModeList1 aufgerufen, da GetDisplayModeList alle Modi zurückgeben kann, die von DXGI_ENUM_MODES angegeben werden, einschließlich des Stereomodus. GetDisplayModeList gibt jedoch eine Liste von DXGI_MODE_DESC-Strukturen zurück, die die früheren Modusbeschreibungen sind und nicht den Stereomodus angeben.
Die GetDisplayModeList1-Methode listet keine Stereomodi auf, es sei denn, Sie geben das flag DXGI_ENUM_MODES_STEREO im Flags-Parameter an. Wenn Sie DXGI_ENUM_MODES_STEREO angeben, sind Stereomodi in der Liste der zurückgegebenen Modi enthalten, auf die der pDesc-Parameter verweist. Anders ausgedrückt: Die Methode gibt sowohl den Stereo- als auch den Monomodus zurück.
Wenn Sie vom Fenstermodus in den Vollbildmodus wechseln, wählt eine Swapchain im Allgemeinen automatisch einen Anzeigemodus aus, der die Auflösung, Farbtiefe und Aktualisierungsrate der Swapchain erfüllt (oder überschreitet). Um mehr Kontrolle über den Anzeigemodus zu haben, verwenden Sie GetDisplayModeList1 , um den Satz von Anzeigemodi abzufragen, die anhand von Monitorfunktionen überprüft werden, oder alle Modi, die dem Desktop entsprechen (wenn die Desktopeinstellungen nicht für den Monitor überprüft werden).
Der folgende Beispielcode zeigt, dass Sie GetDisplayModeList1 zweimal aufrufen müssen. Rufen Sie zuerst GetDisplayModeList1 auf, um die Anzahl der verfügbaren Modi abzurufen, und rufen Sie dann GetDisplayModeList1 auf, um eine Beschreibung der Modi zurückzugeben.
UINT num = 0;
DXGI_FORMAT format = DXGI_FORMAT_R32G32B32A32_FLOAT;
UINT flags = DXGI_ENUM_MODES_INTERLACED;
pOutput->GetDisplayModeList1( format, flags, &num, 0);
...
DXGI_MODE_DESC1 * pDescs = new DXGI_MODE_DESC1[num];
pOutput->GetDisplayModeList1( format, flags, &num, pDescs);
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 und Plattformupdate für Windows Server 2008 R2 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | dxgi1_2.h |
Bibliothek | DXGI.lib |