可能重复:
How to get the Monitor Screen Resolution from an hWnd?
有没有办法在C ++中获得屏幕分辨率?
我搜索过MSDN,但没有运气。我发现最接近的是ChangeDisplaySettingsEx(),但似乎没有办法只返回res而不改变它。
答案 0 :(得分:52)
#include "wtypes.h"
#include <iostream>
using namespace std;
// Get the horizontal and vertical screen sizes in pixel
void GetDesktopResolution(int& horizontal, int& vertical)
{
RECT desktop;
// Get a handle to the desktop window
const HWND hDesktop = GetDesktopWindow();
// Get the size of screen to the variable desktop
GetWindowRect(hDesktop, &desktop);
// The top left corner will have coordinates (0,0)
// and the bottom right corner will have coordinates
// (horizontal, vertical)
horizontal = desktop.right;
vertical = desktop.bottom;
}
int main()
{
int horizontal = 0;
int vertical = 0;
GetDesktopResolution(horizontal, vertical);
cout << horizontal << '\n' << vertical << '\n';
return 0;
}
来源:http://cppkid.wordpress.com/2009/01/07/how-to-get-the-screen-resolution-in-pixels/
答案 1 :(得分:0)
在Embarcadero C ++构建器中,你可以像这样得到它
Screen->Height;
Screen->Width;
这适用于随Embarcadero产品提供的VCL框架:C ++ Builder,Delphi。