defScreenSaverProc 函数 (scrnsave.h)
为屏幕保护程序应用程序不处理的任何消息提供默认处理。
语法
LRESULT DefScreenSaverProc(
HWND hWnd,
UINT msg,
WPARAM wParam,
LPARAM lParam
);
参数
hWnd
类型:HWND
屏幕保护程序窗口的标识符。
msg
类型: UINT
要处理的消息。 DefScreenSaverProc 函数响应影响屏幕保护程序操作的消息,详见“备注”部分。
如果屏幕保护程序应用程序必须执行不同的操作来响应任何这些消息,则应用程序的 ScreenSaverProc 窗口过程应处理该消息。
wParam
类型:WPARAM
其他的消息特定信息。
lParam
类型:LPARAM
其他的消息特定信息。
返回值
类型: LONG
返回值指定消息处理的结果,并取决于发送的消息。
注解
屏幕保护程序的 ScreenSaverProc 窗口过程应使用 DefScreenSaverProc 而不是 DefWindowProc 函数来提供默认的消息处理。 DefScreenSaverProc 函数会将任何不影响屏幕保护程序操作的消息传递到 DefWindowProc。
下表介绍了 DefScreenSaverProc 如何处理各种窗口消息。
Message | 说明 |
---|---|
WM_ACTIVATE、WM_ACTIVATEAPP、WM_NCACTIVATE | 如果 wParam 参数为 FALSE,则关闭屏幕保护程序。 如果 wParam 值为 FALSE,则表示屏幕保护程序正在失去输入焦点。 通过发送 WM_CLOSE 消息关闭屏幕保护程序。 |
WM_SETCURSOR | 通过将光标设置为 NULL,从屏幕中删除光标。 |
WM_LBUTTONDOWN、WM_RBUTTONDOWN、WM_MBUTTONDOWN、WM_KEYDOWN、WM_KEYUP、WM_MOUSEMOVE | 调用 PostQuitMessage 函数以关闭屏幕保护程序。 |
WM_DESTROY | 发布 WM_CLOSE 消息以关闭屏幕保护程序窗口。 |
WM_SYSCOMMAND | 如果 WM_SYSCOMMAND 的 wParam 参数SC_CLOSE或SC_SCREENSAVE,则返回 FALSE。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | scrnsave.h |
Library | Scrnsave.lib |
DLL | 无 |