Question

I have a Win32 application with multiple child windows to the main window. During runtime I expand one of the child windows such that it covers other child windows. When I move this window by its caption( causing a WM_EXITSIZEMOVE message ) the windows beneath the expanded window 'shine' through( are redrawn over the expanded window ) causing visible artifacts. How do I prevent this from happening?

EDIT: When I expand the window I use the following code:

SetWindowPos( hWnd, HWND_TOP, rct.left, rct.top, rct.right, rct.bottom, 0 );

Also, the only windows that shine through are splitter windows created with EasySplit...

Was it helpful?

Solution

Apply WS_CLIPCHILDREN style on parent and WS_CLIPSIBLINGS on children.

OTHER TIPS

I do believe there are settings to be used with the function that will say something like "redraw" and then have a value. While I am not sure, there may already be a value like this in your code related to the child windows. Simply turn it to off, and that may fix your problem. If it doesn't fix it, or if there is no such option, then try Googling the function group and see if the syntax is explained there. Good Luck!!!

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top