Своим опытом делится Олег Кулабухов:
Если вы попробуете отслеживать WM_SIZE или WM_MOVE, то получите множество таких сообщений во время перемещения окна. Нижеприведенный код демонстрирует пример перехвата WM_EXITSIZEMOVE, которая хоть и документирована только для применения в Windows NT, но работает и Windows 95. Учтите, что вы можете использовать WM_ENTERSIZEMOVE для отлавливания начала изменения размера/перемещения.
type TForm1 = class(TForm) private { Private declarations } public procedure WMEXITSIZEMOVE(var Message: TMessage); message WM_EXITSIZEMOVE; { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.WMEXITSIZEMOVE(var Message: TMessage); begin Form1.Caption := 'Finished Moving and sizing'; end; |
[001909]