скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Обработка запроса на максимальное раскрытие окна



Мне необходимо иметь в приложении форму, раскрывающуюся при нажатии на кнопку "Открыть на весь экран" только в половину экрана, а не на полный экран.

Вам необходимо обработать из вашей формы сообщение 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;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook