Перед изменением размера окна Windows посылает сообщение wm_GetMinMaxInfo, перехватив которое, можно устанавливать необходимые размеры окна.
Ограничение на размеры окна содержатся в структуре типа TMinMaxInfo. Для установки новых ограничений достаточно изменить соответствующие значения.
ptMaxSize Размер окна при его максимизации.
ptMaxPosition Положение левого верхнего угла окна при его максимизации.
ptMaxTrackSize Максимальный размер окна при увеличении его размеров.
ptMinTrackSize Минимальный размер окна при уменьшении его размеров.
Пример:
public
procedure WMGetMinMaxInfo(var M:TWMGetMinMaxInfo);message WM_GetMinMaxInfo;
...
Procedure TForm1.WMGetMinMaxInfo(var M: TWMGetMinMaxInfo);
Begin
{координата X}
M.MinMaxInfo^.PTMaxSize.X := 800;
M.MinMaxInfo^.PTMaxPosition.X := 0;
M.MinMaxInfo^.PTMaxTrackSize.X := 800;
M.MinMaxInfo^.PTMinTrackSize.X := 300;
{координата Y}
M.MinMaxInfo^.PTMaxSize.Y := 600;
M.MinMaxInfo^.PTMaxPosition.Y := 0;
M.MinMaxInfo^.PTMaxTrackSize.Y := 600;
M.MinMaxInfo^.PTMinTrackSize.Y := 200;
end;
Просмотров: 10302