What of these should I use in InvalidateRect to refresh my window? And why?
A very simple explanation is that GetWindowRect()
gives you the rectangle that includes the borders of the window. GetClientRect()
gives you the rectangle that excludes the borders - the area that is allocated to the window specific drawing.
Please note that GetWindowRect()
returns a rectangle in screen coordinates - coordinates that are relative to the screen/monitor. GetClientRect()
returns a rectangle that is relative to itself.