IDirectDraw7::EnumDisplayModes 方法 (ddraw.h)
枚举硬件通过 DirectDraw 对象公开并与提供的图面说明兼容的所有显示模式。
语法
HRESULT EnumDisplayModes(
[in] DWORD unnamedParam1,
[in] LPDDSURFACEDESC2 unnamedParam2,
[in] LPVOID unnamedParam3,
[in] LPDDENUMMODESCALLBACK2 unnamedParam4
);
参数
[in] unnamedParam1
此值由以下一个或多个标志组成:
DDEDM_REFRESHRATES
枚举具有不同刷新速率的模式。 IDirectDraw7::EnumDisplayModes 保证特定模式仅枚举一次。 此标志指定在确定模式是否唯一时是否考虑刷新率。
DDEDM_STANDARDVGAMODES
除 320x200x8 模式 X 模式外,还枚举 Mode 13。
[in] unnamedParam2
要针对可用模式检查的 DDSURFACEDESC2 结构的地址。 如果此参数的值为 NULL,则枚举所有模式。
[in] unnamedParam3
要传递给每个枚举成员的应用程序定义结构的地址。
[in] unnamedParam4
枚举过程每次找到匹配项时调用的 EnumModesCallback2 函数的地址。
返回值
如果该方法成功,则返回值DD_OK。
如果失败,该方法可能会返回以下错误值之一:
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
备注
IDirectDraw7::EnumDisplayModes 枚举 DDSURFACEDESC2 结构的 dwRefreshRate 成员;IDirectDraw::EnumDisplayModes 方法没有此功能。 如果使用 IDirectDraw7::SetDisplayMode 方法设置新模式的刷新率,请使用 IDirectDraw7::EnumDisplayModes 枚举 dwRefreshRate 成员。
IDirectDraw7::EnumDisplayModes 不同于以前的接口中的对应项,因为它接受 EnumModesCallback2 函数的地址作为参数,而不是 EnumModesCallback 函数。
要求
目标平台 | Windows |
标头 | ddraw.h |
Library | Ddraw.lib |
DLL | Ddraw.dll |