In
borland.public.delphi.winapi hat Peter Below (TeamB) mal folgende Erklärung geschrieben:
Zitat:
If you hold down the mouse on the caption bar or drop down a menu Windows goes into a tight message loop of
its own that only processes mouse messages. This loop runs until the mouse
goes up again, so any processing that depends on the main message loop will
stop while the mouse is down. You get informed when such a loop is entered
or terminated by messages Windows sends to your form: WM_ENTERMENULOOP,
WM_EXITMENULOOP, WM_ENTERSIZEMOVE, WM_EXITSIZEMOVE. I think you could
cancel the operation by sending a WM_CANCELMODE to the form in response to
the WM_ENTER* messages but that will impact the corresponding functions of
your application. Mouse down events on the non-client area can also be
trapped by handing messages like WM_NCLBUTTONDOWN and not passing them on
to the inherited handler while your app is in a sensitive state.