Мне необходимо иметь в приложении форму, раскрывающуюся при нажатии на кнопку "Открыть на весь экран" только в половину экрана, а не на полный экран.
Вам необходимо обработать из вашей формы сообщение WM_GETMINMAXINFO.
Например, добавьте следующее объявление в защищенную (protected) секцию вашей формы (interface):
procedure _WM_GETMINMAXINFO( var mmInfo : TWMGETMINMAXINFO ); message wm_GetMinMaxInfo; |
и создайте обработчик этого сообщения следующим образом (TForm1, естественно, имя вашей формы):
procedure TForm1._WM_GETMINMAXINFO( var mmInfo : TWMGETMINMAXINFO ); begin // устанавливаем позицию и размер вашей формы при ее максимальном раскрытии: with mmInfo.minmaxinfo^ do begin ptmaxposition.x := Screen.Width div 4; ptmaxposition.y := Screen.Height div 4; ptmaxsize.x := Screen.Width div 2; ptmaxsize.y := Screen.Height div 2; end; end; |