Comment obtenir la résolution d'écran en C++? [dupliquer]

possibilité de dupliquer:

Comment obtenir la résolution D'écran D'un HWND?

y a-t-il un moyen d'obtenir la résolution d'écran en C++?

J'ai cherché MSDN mais sans succès. La chose la plus proche que j'ai trouvé était ChangeDisplaySettingsEx () mais cela ne semble pas avoir un moyen de simplement retourner la réserve sans de le changer.

27
demandé sur Community 2012-01-01 01:19:08

2 réponses

#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;
}

Source: http://cppkid.wordpress.com/2009/01/07/how-to-get-the-screen-resolution-in-pixels /

47
répondu eboix 2011-12-31 21:23:56

dans Embarcadero C++ builder vous pouvez l'obtenir comme ceci

Screen->Height;
Screen->Width;

c'est spécifique pour VCL framework qui est fourni avec les produits Embarcadero: C++ Builder, Delphi.

0
répondu Shaun07776 2017-10-21 02:48:02