I have a dialog (using MFC) that needs to paint a few child windows and then grab the bits from the result and copy to another window. I found some examples for saving the bits, but I'm not sure how to determine the moment when all the child windows have been painted. Right now I set a short timer after invalidating the last child window and do the BitBlt when it expires. Works, but doesn't seem right. I tried to use Spy++ to see if the main window gets any interesting messages, but found none. Anybody?
You request an area to be painted by marking regions with InvalidateRect. The areas are painted on WM_PAINT. But that's a low priority message, in that they may be pushed back in the message queue, and they're coalesced.
I did InvalidateRect to update the child windows. My question is how to determine a moment that they (custom controls) all finished drawing. Send a custom message from each to the mother window? Once again I have no problem updating everything. I just need to know when it's finished.