|Ok, I'm wrong, damn OS being smart and getting in the way
My app fails to refresh if I try to move the window around.
During the first 2 calls to anyMethodCall() my UI is unresponsive and my label is refreshing perfectly but then the window will start to move perfectly according to my mouse requests even if the app is still executing calls 3 and 4. And whats worse, my label stops refreshing. This is due (I guess) to Windows (Xp in this case, don't know if 2000 or previous work the same way) detecting my window as unresposive and taking action.
DoEvents() will take care of this situation becuase it will inform the OS that my window is once again valid while Refresh() will not do that and the OS will keep on thinking its not responding.
So yeah DoEvents() is the best solution because you can't rely on the user not trying to move the window around. My bad
-- modified at 12:48 Thursday 3rd May, 2007