如何:获取适配器显示模式
本主题演示如何使用 Microsoft DirectX 图形基础结构 (DXGI) 获取与适配器关联的有效显示模式。 DirectX 10 和 11 可以使用 DXGI 获取有效的显示模式。 了解有效的显示模式可确保应用程序能够正确选择有效的全屏模式。
获取适配器显示模式
创建 IDXGIFactory 对象,并使用它来枚举可用的适配器。 有关详细信息,请参阅 如何:枚举适配器。
调用 IDXGIAdapter::EnumOutputs 以枚举每个适配器的输出。
IDXGIOutput* pOutput = NULL; HRESULT hr; hr = pAdapter->EnumOutputs(0,&pOutput);
调用 IDXGIOutput::GetDisplayModeList 以检索 DXGI_MODE_DESC 结构和数组中的元素数的数组。 每个 DXGI_MODE_DESC 结构表示输出的有效显示模式。
UINT numModes = 0; DXGI_MODE_DESC* displayModes = NULL; DXGI_FORMAT format = DXGI_FORMAT_R32G32B32A32_FLOAT; // Get the number of elements hr = pOutput->GetDisplayModeList( format, 0, &numModes, NULL); displayModes = new DXGI_MODE_DESC[numModes]; // Get the list hr = pOutput->GetDisplayModeList( format, 0, &numModes, displayModes);
相关主题