Ответ 1
Чтобы обнаружить движение или калибровку, запустите сообщение WM_ENTERSIZEMOVE
. Он отправляется в окно, как только пользователь нажимает на панель заголовка окна или на границу размера (что заставляет окно вводить цикл перемещения или калибровки).
Чтобы определить, что перемещение или калибровка закончено, перейдите в WM_EXITSIZEMOVE
сообщение. Он отправляется в окно после того, как пользователь выпустит строку заголовка окна или границу размера (что заставляет окно выйти из цикла перемещения или калибровки).
Вы можете поймать любой из них, объявив (и внедряя) их на уровне формы:
procedure WMEnterSizeMove(var Message: TMessage); message WM_ENTERSIZEMOVE;
procedure WMExitSizeMove(var Message: TMessage); message WM_EXITSIZEMOVE;