C++使用EnumDisplayMonitors输出所有monitor的hwnd
时间: 2024-10-13 16:12:54 浏览: 23
C++程序中,使用HWND获取CWnd的指针
在C++中,`EnumDisplayMonitors`函数是Windows API的一部分,用于枚举系统显示监视器(显示器)。这个函数主要用于图形应用程序,它返回指定窗口下的所有监视器的信息,包括窗口句柄(HWND)。然而,直接调用该函数通常需要一些底层的MFC(Microsoft Foundation Classes)或WinAPI编程技巧,因为它是非成员函数,不能直接从普通类的对象上调用。
下面是一个简单的示例,展示了如何使用`EnumDisplayMonitors`获取每个监视器的HWND,假设已经包含了一些必要的头文件并创建了`HDC`(设备上下文):
```cpp
#include <windows.h>
#include <iostream>
LRESULT CALLBACK EnumMonitorsProc(HDC hdc, LPCRECT lprcMonitor, HDC hdcTarget, LPARAM dwData) {
// 检查是否成功获取到屏幕信息
if (hdc && lprcMonitor) {
HWND hwnd =
阅读全文