DefScreenSaverProc功能为屏幕保护程序应用程序不处理的任何消息提供默认处理。
LONG DefScreenSaverProc(
HWND 【的hWnd】, | //处理屏幕保护程序窗口 |
UINT 【味精】, | // 信息 |
WPARAM 【wParam中】, | //第一个消息参数 |
LPARAM 【lParam的】 | //第二个消息参数 |
); |
参数
【的hWnd】
标识屏幕保护程序窗口。
【味精】
指定要处理的消息。DefScreenSaverProc功能将响应影响屏幕保护程序操作的消息,如“备注”部分所述。
如果屏幕保护程序应用程序必须对这些消息中的任何消息执行不同的操作,则应用程序的ScreenSaverProc窗口过程应处理消息。
【wParam中】
指定附加的消息特定信息。
【lParam的】
指定附加的消息特定信息。
返回值
返回值指定消息处理的结果,并取决于发送的消息。
备注
屏幕保护程序的ScreenSaverProc窗口过程应使用DefScreenSaverProc而不是DefWindowProc功能来提供默认消息处理。DefScreenSaverProc功能将任何不影响屏幕保护程序的邮件传递给DefWindowProc.
下表描述了DefScreenSaverProc如何处理各种窗口消息:
信息 | 行动 |
WM_ACTIVATE, WM_ACTIVATEAPP, WM_NCACTIVATE | 如果【wParam中】参数为FALSE,则关闭屏幕保护程序。FALSE的【wParam中】值表示屏幕保护程序正在丢失输入焦点。通过发送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。 |
也可以看看
DefWindowProc, PostQuitMessage, ScreenSaverProc, WM_ACTIVATE, WM_ACTIVATEAPP, WM_CLOSE, WM_DESTROY, WM_KEYDOWN, WM_KEYUP, WM_LBUTTONDOWN, WM_MBUTTONDOWN, WM_MOUSEMOVE, WM_NCACTIVATE, WM_RBUTTONDOWN, WM_SETCURSOR, WM_SYSCOMMAND