2007. május 3., csütörtök

Force a TForm and all of its children to repaint


Problem/Question/Abstract:

I'm little confused about the Invalidate / Repaint methods. I need a TForm and all its child components (panels, frames/ forms) to be repainted at once. If I use Repaint, the child windows don't seem to be repainted. Is that ok? How can I repaint all controls at once?

Answer:

Here is one which will force the Form to repaint (and all its children)

RedrawWindow(Handle, nil, 0, RDW_ERASE or RDW_INVALIDATE or RDW_ALLCHILDREN);

Nincsenek megjegyzések:

Megjegyzés küldése