純C/C++ 呼叫WINAPI 取得系統DPI [CB_use_WinAPI_getDPI]

純C/C++ 呼叫WINAPI 取得系統DPI [CB_use_WinAPI_getDPI]

純C/C++ 呼叫WINAPI 取得系統DPI [CB_use_WinAPI_getDPI]


GITHUB: https://github.com/jash-git/CB_use_WinAPI_getDPI.git


CODE

#include <iostream>
#include <cstdio>
//--
//Step_01
#define _WIN32_WINNT 0x0500//GetDC
#include <windows.h>
//--

using namespace std;

//--
//Step_02
class Point
{
    public:
        int X;
        int Y;
        Point();
};
Point::Point()
{
    X=0;
    Y=0;
}
//--
static Point GetSystemDpi()
{
    Point result;
    HWND myconsole=GetConsoleWindow();
    HDC mydc = GetDC(myconsole);

    result.X = GetDeviceCaps(mydc, 88);//-lgdi32
    result.Y = GetDeviceCaps(mydc, 90);//-lgdi32

    ReleaseDC(myconsole,mydc);

    return result;
}
//--
void Pause()
{
    printf("Press Enter key to continue...");
    fgetc(stdin);
}
int main()
{
    Point result=GetSystemDpi();
    cout <<"dpi="<< result.X <<"*"<< result.Y<< endl;
    Pause();
    return 0;
}

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *