与 EnumDisplayMonitors 函数一起使用的应用程序定义的回调函数。 MONITORENUMPROC 类型定义指向此回调函数的指针。 MonitorEnumProc 是应用程序定义的函数名称的占位符。
Syntax
MONITORENUMPROC Monitorenumproc;
BOOL Monitorenumproc(
HMONITOR unnamedParam1,
HDC unnamedParam2,
LPRECT unnamedParam3,
LPARAM unnamedParam4
)
{...}
参数
unnamedParam1
类型: HMONITOR
显示监视器的句柄。 此值始终为非 NULL。 此参数通常命名为 hMonitor。
unnamedParam2
类型: HDC
设备上下文的句柄。 此参数通常命名为 hdcMonitor。
设备上下文具有适合 hMonitor 标识的显示监视器的颜色属性。 设备上下文的剪辑区域设置为由 EnumDisplayMonitors 的 hdc 参数标识的设备上下文可见区域的交集、EnumDisplayMonitors 的 lprcClip 参数指向的矩形以及显示监视器矩形。
如果 EnumDisplayMonitors 的 hdc 参数为 NULL,则此值为 NULL。
unnamedParam3
类型: LPRECT
指向 RECT 结构的指针。 此参数通常命名为 lprcMonitor。
如果 hdcMonitor 为非 NULL,则此矩形是 hdcMonitor 和显示监视器矩形标识的设备上下文剪辑区域的交集。 矩形坐标是设备上下文坐标。
如果 hdcMonitor 为 NULL,则此矩形是显示监视器矩形。 矩形坐标是虚拟屏幕坐标。
unnamedParam4
类型: LPARAM
EnumDisplayMonitors 直接传递给枚举函数的应用程序定义数据。 此参数通常命名为 dwData。
返回值
类型: BOOL
若要继续枚举,请返回 TRUE。
若要停止枚举,请返回 FALSE。
注解
注释
参数在标头中定义,没有名称: typedef BOOL (CALLBACK* MONITORENUMPROC)(HMONITOR, HDC, LPRECT, LPARAM);。 因此,语法块将它们 unnamedParam1 - unnamedParam4列为 。 可以在应用中命名这些参数。 但是,它们通常按参数说明中所示命名。
可以使用 EnumDisplayMonitors 函数枚举与指定设备上下文的可见区域相交的显示监视器集,并选择性地枚举剪辑矩形。 为此,请将 hdc 参数设置为非 NULL 值,并根据需要设置 lprcClip 参数。
还可以使用 EnumDisplayMonitors 函数枚举桌面上的一个或多个显示监视器,而无需提供设备上下文。 为此,请将 EnumDisplayMonitors 的 hdc 参数设置为 NULL,并根据需要设置 lprcClip 参数。
在所有情况下, EnumDisplayMonitors 都会针对计算枚举集中的每个显示监视器调用一次指定的 MonitorEnumProc 函数。 MonitorEnumProc 函数始终接收显示监视器的句柄。
如果 EnumDisplayMonitors 的 hdc 参数为非 NULL,MonitorEnumProc 函数还会接收设备上下文的句柄,其颜色格式适合显示监视器。 然后,可以采用最适合显示监视器的方式绘制到设备上下文中。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
| 支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | winuser.h (包括 Windows.h) |