Советы по Delphi

         

Предотвращение изменения вертикальных размеров окна


Вы должны перехватывать сообщение WM_GETMINMAXINFO:

Поместите это в декларацию класса формы:

    procedure WMGetMinMaxInfo(var Msg: TWMGetMinMaxInfo); message WM_GETMINMAXINFO;

и в секции реализации:

    procedure TMyForm.WMGetMinMaxInfo(var Msg: TWMGetMinMaxInfo);


begin
{ --------------------------------------------------------------------} { Поместите ваши величины вместо                                      } { MIN_WIDTH, MIN_HEIGHT, MAX_WIDTH, MAX_HEIGHT                        } {                                                                     } { Для возможности только горизонтального изменение размера,           } { поместите значение свойства формы 'Height' в MIN_HEIGHT, MAX_HEIGHT } { --------------------------------------------------------------------} Msg.MinMaxInfo^.ptMinTrackSize := Point(MIN_WIDTH, MIN_HEIGHT); Msg.MinMaxInfo^.ptMaxTrackSize := Point(MAX_WIDTH, MAX_HEIGHT); inherited end;

И все заработает как надо.

[000102]

Содержание раздела