Ger*_*iss 16 winapi screen-resolution
如何从hWnd获得显示器屏幕分辨率?
我正在使用hWnd,因为窗口可以位于多个监视器中的任何一个上.
即hWnd顶部/左侧坐标位于屏幕分辨率为800 x 600的显示器上.
我用一种名为PL/B的语言编程,它允许调用Windows API.
可以使用哪些Window API?
sid*_*guy 22
这是一个适合我的C++代码示例:
HMONITOR monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST);
MONITORINFO info;
info.cbSize = sizeof(MONITORINFO);
GetMonitorInfo(monitor, &info);
int monitor_width = info.rcMonitor.right - info.rcMonitor.left;
int monitor_height = info.rcMonitor.bottom - info.rcMonitor.top;
Run Code Online (Sandbox Code Playgroud)
Eri*_*bes 21
该user32功能MonitorFromWindow允许您在一个hWnd传递,并返回一个句柄到它的监视器(或默认-详见链接的MSDN文章).有了它,您可以调用GetMonitorInfo来检索包含RECT详细说明其分辨率的MONITORINFO结构.
有关详细信息,请参阅MSDN 的" 多屏幕参考"部分.
我添加了示例代码,但我不知道您引用的语言,我不知道C#示例代码对您有多大帮助.如果您认为它会有所帮助,请告诉我,我会快速编写一些代码.