Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 401

•  TDictionary Custom Sort  6 433

•  Fast Watermark Sources  6 214

•  3D Designer  9 174

•  Sik Screen Capture  6 553

•  Patch Maker  6 958

•  Айболит (remote control)  6 944

•  ListBox Drag & Drop  5 818

•  Доска для игры Реверси  96 897

•  Графические эффекты  7 150

•  Рисование по маске  6 457

•  Перетаскивание изображений  5 319

•  Canvas Drawing  5 686

•  Рисование Луны  5 394

•  Поворот изображения  4 934

•  Рисование стержней  3 517

•  Paint on Shape  2 784

•  Генератор кроссвордов  3 647

•  Головоломка Paletto  2 945

•  Теорема Монжа об окружностях  3 754

•  Пазл Numbrix  2 474

•  Заборы и коммивояжеры  3 155

•  Игра HIP  2 117

•  Игра Go (Го)  2 049

•  Симулятор лифта  2 410

•  Программа укладки плитки  2 103

•  Генератор лабиринта  2 562

•  Проверка числового ввода  2 253

•  HEX View  2 580

•  Физический маятник  2 189

 
скрыть

  Форум  

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

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



Delphi Sources

WM_GETMINMAXINFO



Посылается перед изменением размеров или положения окна. Обработчик сообщения может использоваться для ограничения допустимых размеров и координат положения на экране.

Параметры

MinMaxInfo - указывает на структуру типа MINMAXINFO, содержащую принятые по умолчанию пределы изменения размеров и координат положения окна. Описание этой структуры:


typedef struct tagMINMAXINFO{ 
  POINT ptReserved; 
  POINT ptMaxSize; 
  POINT ptMaxPosition; 
  POINT ptMinTrackSize; 
  POINT ptMaxTrackSize; 
} MINMAXINFO; 

Поля структуры означают следующее:

  • ptReserved - Зарезервировано и пока не используется
  • ptMaxSize - Поле типа Point определяет ширину (Point.x) и высоту (Point.y) развернутого окна
  • ptMaxPosition - Поле типа Point определяет положения левого (Point.x) и верхнего (Point.y) краев развернутого окна
  • ptMinTrackSize - Поле типа Point определяет минимальную ширину (Point.x) и минимальную высоту (Point.y) окна при изменении пользователем размеров его рамки
  • ptMaxTrackSize - Поле типа Point определяет максимальную ширину (Point.x) и максимальную высоту (Point.y) окна при изменении пользователем размеров его рамки

Возвращаемое значение

Если приложение обрабатывает это сообщение, оно должно вернуть 0.

Пример:

Сначала нужно в частных объявлениях (после слова private) объявить процедуру обработки данного сообщения


private
  { Private declarations }
  procedure WMGETMINMAXINFO (var Msg:TWMGETMINMAXINFO); message WM_GETMINMAXINFO;

В области реализации (implementation) её нужно описать так:


procedure TForm1.WMGetMinMaxInfo(var Msg:TWMGetMinMaxInfo);
begin
  with Msg.MinMaxInfo^ do
  begin
    ptMinTrackSize.x:=308;             { минимальная ширина окна }
    ptMinTrackSize.y:=180;             { минимальная высота окна }
    ptMaxTrackSize.x:=400;             { максимальная ширина окна }
    ptMaxTrackSize.y:=250;             { максимальная высота окна }
    ptMaxPosition.x:=BoundsRect.Left;  { максимальная позиция окна по оси Х после максимизации }
    ptMaxPosition.y:=BoundsRect.top;   { максимальная позиция окна по оси У после максимизации }
    ptMaxSize.x:=308;                  { максимальная ширина окна после максимизации }
    ptMaxSize.y:=180;                  { максимальная высота окна после максимизации }
  end;
  inherited;
end;








Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте