我在寻找一种获取所有支持分辨率的方法。
在这里搜索了一些解决方案后,我得到了以下代码:
#include "Windows.h"
#include <Windows.h>
#include <iostream>
using namespace std;
int main()
{
DEVMODE dm = { 0 };
dm.dmSize = sizeof(dm);
for( int iModeNum = 0; EnumDisplaySettings( NULL, iModeNum, &dm ) != 0; iModeNum++ )
{
cout << "Mode #" << iModeNum << " = " << dm.dmPelsWidth << "x" << dm.dmPelsHeight << endl;
}
int age;
cin>>age;
我对这段代码有两个问题:
运行代码时,我一直得到相同的分辨率。例如:Mode0、Mode1、Mode2..... Mode17都是320x200。
在使用 GUI 查看可用分辨率时,我没有 320x200 的选项。我看到我的计算机支持 600x800 及以上分辨率,但在运行这个小程序时,我也看到了 400x300、320x240 等。
请问是否有人能够提供帮助和建议呢? 谢谢!
dmDisplayOrientation
、dmDisplayFixedOutput
、dmDisplayFlags
。 - MSalters