PrintWindow && WM_PRINT

PrintWindow();
::PrintWindow(hWnd, hdcMem, PW_CLIENTONLY);
可以必须是顶层窗口;最小化不行,只是被遮住视为可见,SW_HIDE视为隐藏打印失败;不能过滤子窗口!

WM_PRINT:
::SendMessage(hWnd, WM_PRINT, (WPARAM)hdcMem, PRF_CLIENT|PRF_ERASEBKGND|PRF_NONCLIENT|PRF_CHILDREN);
不能是父窗口;可以是当前窗口/当前窗口子窗口;可以过滤子窗口!最小化不行!SW_HIDE视为可见!

你可能感兴趣的:(PrintWindow && WM_PRINT)