如何获得屏幕刷新率?

这甚至有可能吗? 由于我注意到v-sync不能在我的笔记本电脑上工作,所以我正在“手动”构buildFPS限制器,现在我想使用用户设置到他的屏幕上的FPS限制。

编辑:我的意思是显示器赫兹率。

编辑3:inheritance人我工作的代码(我认为…有什么不对?):

DEVMODE lpDevMode; memset(&lpDevMode, 0, sizeof(DEVMODE)); lpDevMode.dmSize = sizeof(DEVMODE); lpDevMode.dmDriverExtra = 0; if(EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &lpDevMode) == 0){ framerate_limit = 60; // default value if cannot retrieve from user settings. } 

按需求,这是我的V – 同步启用代码jay.lee要求:

 PFNWGLSWAPINTERVALEXTPROC wglSwapIntervalEXT = NULL; // global ... wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC) wglGetProcAddress("wglSwapIntervalEXT"); v_sync_enabled = 0; if(wglSwapIntervalEXT != NULL){ if(wglSwapIntervalEXT(1) != FALSE){ v_sync_enabled = 1; } } 

Win32 EnumDisplaySettings函数可能是你正在寻找的。 刷新率保存在lpDevMode->dmDisplayFrequency