一键切换屏幕分辨率
2016-11-17 by Stavros现在大家的桌面都是1920x1080或者2560x1440之类高分辨率了。但是有时候还不得不临时调到较低的分辨率,比如遇到需要像素级精确定位的时候,遇到百度网盘或者微信PC版这样字体又小又不能调大的软件的时候,等等。桌面右键然后改分辨率还是太麻烦了,用完了还得改回来。
有没有办法一键切换分辨率呢?没找到现成的工具,自己写一个。程序如下:
#include <windows.h>
int WINAPI WinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
LPSTR lpszArgument, int nFunsterStil)
{
DEVMODE dm;
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dm);
if(dm.dmPelsHeight == 1080) {
dm.dmPelsHeight = 720;
dm.dmPelsWidth = 1280;
}
else {
dm.dmPelsHeight = 1080;
dm.dmPelsWidth = 1920;
}
ChangeDisplaySettings(&dm, CDS_RESET);
return 0;
}
编译成exe,扔到随便什么地方,再拖到任务栏。好了,点一下就可以切到1280x720,再点一下就切回1920x1080了。
在tdm-gcc-32和tdm-gcc-64环境下测试通过。