Méthode IDXGIOutput1 ::GetDisplayModeList1 (dxgi1_2.h)
Obtient les modes d’affichage qui correspondent au format demandé et aux autres options d’entrée.
Syntaxe
HRESULT GetDisplayModeList1(
DXGI_FORMAT EnumFormat,
UINT Flags,
[in, out] UINT *pNumModes,
[out, optional] DXGI_MODE_DESC1 *pDesc
);
Paramètres
EnumFormat
Valeur DXGI_FORMAT typée pour le format de couleur.
Flags
Combinaison de valeurs de type DXGI_ENUM_MODES qui sont combinées à l’aide d’une opération OR au niveau du bit. La valeur résultante spécifie les options pour les modes d’affichage à inclure. Vous devez spécifier DXGI_ENUM_MODES_SCALING pour exposer les modes d’affichage qui nécessitent une mise à l’échelle. Les modes centrés qui ne nécessitent aucune mise à l’échelle et qui correspondent directement à la sortie d’affichage sont énumérés par défaut.
[in, out] pNumModes
Pointeur vers une variable qui reçoit le nombre de modes d’affichage retournés par GetDisplayModeList1 dans le bloc de mémoire vers lequel pDesc pointe. Définissez pDesc surNULL afin que pNumModes retourne le nombre de modes d’affichage qui correspondent au format et aux options. Sinon, pNumModes renvoie le nombre de modes d’affichage retournés dans pDesc.
[out, optional] pDesc
Pointeur vers une liste de modes d’affichage ; défini sur NULL pour obtenir le nombre de modes d’affichage.
Valeur retournée
Retourne l’un des codes d’erreur décrits dans la rubrique DXGI_ERROR . Il est rare, mais possible, que les modes d’affichage disponibles puissent changer immédiatement après l’appel de cette méthode, auquel cas DXGI_ERROR_MORE_DATA est retourné (s’il n’y a pas suffisamment de place pour tous les modes d’affichage).
Remarques
GetDisplayModeList1 est mis à jour à partir de GetDisplayModeList pour renvoyer une liste de structures DXGI_MODE_DESC1 , qui sont des descriptions de mode mis à jour. GetDisplayModeList se comporte comme s’il appelle GetDisplayModeList1 , car GetDisplayModeList peut retourner tous les modes spécifiés par DXGI_ENUM_MODES, y compris le mode stéréo. Toutefois, GetDisplayModeList renvoie une liste de structures DXGI_MODE_DESC , qui sont les anciennes descriptions du mode et n’indiquent pas le mode stéréo.
La méthode GetDisplayModeList1 n’énumère pas les modes stéréo, sauf si vous spécifiez l’indicateur DXGI_ENUM_MODES_STEREO dans le paramètre Flags . Si vous spécifiez DXGI_ENUM_MODES_STEREO, les modes stéréo sont inclus dans la liste des modes retournés vers lesquels pointe le paramètre pDesc . En d’autres termes, la méthode retourne les modes stéréo et mono.
En général, lorsque vous passez du mode fenêtré au mode plein écran, une chaîne d’échange choisit automatiquement un mode d’affichage qui respecte (ou dépasse) la résolution, la profondeur de couleur et la fréquence d’actualisation de la chaîne d’échange. Pour exercer un contrôle accru sur le mode d’affichage, utilisez GetDisplayModeList1 pour interroger l’ensemble des modes d’affichage validés par rapport aux fonctionnalités du moniteur, ou tous les modes qui correspondent au bureau (si les paramètres du bureau ne sont pas validés par rapport au moniteur).
L’exemple de code suivant montre que vous devez appeler GetDisplayModeList1 deux fois. Appelez d’abord GetDisplayModeList1 pour obtenir le nombre de modes disponibles, puis appelez GetDisplayModeList1 pour retourner une description des modes.
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);
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | dxgi1_2.h |
Bibliothèque | DXGI.lib |