一般情况下,DPI为96,放大倍数100%时,“屏幕分辨率”与“桌面分辨率”相同。
如果放大倍数不是100%时,“屏幕分辨率”与“桌面分辨率”不同。
这样看看:
DECLARE LONG GetDC IN User32 LONG
DECLARE LONG ReleaseDC IN User32 LONG,LONG
DECLARE LONG GetDeviceCaps IN Gdi32 LONG,LONG
#define HORZRES 8
#define VERTRES 10
#define DESKTOPVERTRES 117
#define DESKTOPHORZRES 118
#define LOGPIXELSX 88
#define LOGPIXELSY 90
hDC = GetDC(0)
?"屏幕分辨率", GetDeviceCaps(hDC,HORZRES), GetDeviceCaps(hDC, VERTRES)
?"桌面分辨率",GetDeviceCaps(hDC,DESKTOPHORZRES), GetDeviceCaps(hDC,DESKTOPVERTRES)
?"DPI", GetDeviceCaps(hDC,LOGPIXELSX), GetDeviceCaps(hDC, LOGPIXELSY)
ReleaseDC(0, hDC)