IDirect3D9::EnumAdapterModes 方法 (d3d9.h)
查询设备以确定指定的适配器是否支持请求的格式和显示模式。 此方法可在循环中使用,以枚举所有可用的适配器模式。
语法
HRESULT EnumAdapterModes(
[in] UINT Adapter,
[in] D3DFORMAT Format,
[in] UINT Mode,
[out] D3DDISPLAYMODE *pMode
);
参数
[in] Adapter
类型: UINT
表示要枚举的显示适配器的序号。 D3DADAPTER_DEFAULT 始终是主要显示适配器。 当此值等于或超过系统中显示适配器的数量时,此方法返回D3DERR_INVALIDCALL。
[in] Format
类型: D3DFORMAT
允许的像素格式。 请参阅“备注”。
[in] Mode
类型: UINT
表示显示模式索引,该索引是介于 0 和 GetAdapterModeCount 返回的值减 1 之间的无符号整数。
[out] pMode
类型: D3DDISPLAYMODE*
指向 D3DDISPLAYMODE 类型的可用显示模式的指针。 请参阅“备注”。
返回值
类型: HRESULT
- 如果设备可以在此适配器上使用,则返回D3D_OK。
- 如果适配器等于或超过系统中显示适配器的数量,则返回D3DERR_INVALIDCALL。
- 如果图面格式不受支持,或者硬件加速不适用于指定格式,则返回D3DERR_NOTAVAILABLE。
备注
应用程序向 EnumAdapterModes 提供显示模式和格式,后者返回显示模式。 此方法可在循环中使用,以枚举所有可用的显示模式。
应用程序指定格式,并且枚举仅限于与格式完全匹配的显示模式, (alpha 将被忽略) 。 作为 D3DFORMAT) 成员的允许格式 (如下所示:
- D3DFMT_A1R5G5B5
- D3DFMT_A2R10G10B10
- D3DFMT_A8R8G8B8
- D3DFMT_R5G6B5
- D3DFMT_X1R5G5B5
- D3DFMT_X8R8G8B8
要求
目标平台 | Windows |
标头 | d3d9.h (包括 D3D9.h) |
Library | D3D9.lib |