Windows GDI
WM_PRINTCLIENT
The WM_PRINTCLIENT message is sent to a window to request that it draw its client area in the specified device context, most commonly in a printer device context.
Unlike WM_PRINT, WM_PRINTCLIENT is not processed by
DefWindowProc.
A window should process the WM_PRINTCLIENT message through an
application-defined
WindowProc function for it to be used
properly.
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // WM_PRINTCLIENT
WPARAM wParam, // handle to DC (HDC)
LPARAM lParam // drawing options
);
Parameters
- wParam
- Handle to the device context to draw in.
- lParam
- Specifies drawing options. This parameter can be one or more of the following values.
| Value | Meaning |
| PRF_CHECKVISIBLE | Draws the window only if it is visible. |
| PRF_CHILDREN | Draws all visible children windows. |
| PRF_CLIENT | Draws the client area of the window. |
| PRF_ERASEBKGND | Erases the background before drawing the window. |
| PRF_NONCLIENT | Draws the nonclient area of the window. |
| PRF_OWNED | Draws all owned windows. |
Remarks
A window can process this message in much the same manner as WM_PAINT, except that BeginPaint and EndPaint need not be called (a device context is provided), and the window should draw its entire client area rather than just the invalid region.
Windows that can be used anywhere in the system, such as controls, should process this message. It is probably worthwhile for other windows to process this message as well because it is relatively easy to implement.
The
AnimateWindow function requires that the window being animated implement the WM_PRINTCLIENT message.
Windows NT/2000/XP/Vista: Included in Windows NT 4.0 and later.
Windows 95/98/Me: Included in Windows 95 and later.
Header: Declared in Winuser.h; include Windows.h.
See Also
Painting and Drawing Overview, Painting and Drawing Messages, AnimateWindow, BeginPaint, EndPaint, WM_PAINT