The effect of the missing Fullrepaint can be shown, and you have to decide whether you need it or not.
- Place the panel on the form, set the bindings to all directions.
- Set PaintCaption to false or use a blank signature
- Place another shape on the shape so that when you resize the shape, parts of the first panel will be covered by the second panel.
Run the program and the size of the form when the borders of the first panel are not updated.
This is because in WMWindowPosChanged, in the case of (FullRepaint or (ShowCaption and (Caption <> ''))), invalidate will be called, otherwise only InvalidateRect (Handle, Rect, True) from the lines containing only the right and / or lower border is invalid . (thanks to Sertac Akyuz for correction)
As you mentioned, avoiding invalidity, reduces flicker, and in many cases the need for complete invalidity is not provided, so the user can decide for himself how to proceed.
Panels are rarely used, on top without Fullrepaint

source share