![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как ограничить размер формы? [D5, D6, Win95/98, Win2k]
UserL © (2002-01-31 07:16:00)Как сделать так чтоб при изменении размера формы, в минимальную сторону размер менялся только до заданного размера (скажем 500х5000)?
Johnmen (2002-01-31 12:12:00) [1]>Ghost : правильнее все же так (если не использовать Constraints) :
private
procedure WMGetMinMaxInfo(var M: TWMGetMinMaxInfo);
message WM_GetMinMaxInfo;
...
procedure TForm1.WMGetMinMaxInfo(var M: TWMGetMinMaxInfo);
begin;
inherited;
M.MinMaxInfo^.ptMinTrackSize.X:=...;
M.MinMaxInfo^.ptMaxTrackSize.X:=...;
M.MinMaxInfo^.ptMinTrackSize.Y:=...;
M.MinMaxInfo^.ptMaxTrackSize.Y:=...;
M.MinMaxInfo^.ptMaxPosition.X:=...;
M.MinMaxInfo^.ptMaxPosition.Y:=...;
end;
Ghost. (2002-01-31 09:04:00) [2]procedure WMGetMinMaxInfo(var Msg:TMessage); message WM_GETMINMAXINFO;
procedure TFMain.WMGetMinMaxInfo(var Msg: TMessage);
BEGIN
with TWMGetMinMaxInfo(Msg).MinMaxInfo^ do
begin
ptMaxTrackSize := Point(800, 600); // макс. размеры окна
ptMinTrackSize:= Point(400, 200); //минимальные
ptMaxPosition:= Point(50, 55); //позиция при развёртывании
ptMaxSize:= Point(750, 550); //размер при развёртывании
end;
Msg.Result := 1;
END;
UserL (2002-01-31 08:33:00) [3]Спасибо!!!
MBo (2002-01-31 07:35:00) [4]свойство Constraints