artem_niko Posted June 26, 2019 Share Posted June 26, 2019 Добрый день! Как можно заставить открываться форму, которая бы брала для себя размеры (выоста и ширина) своего Parent? Поясню. Есть MainForm, на которой есть кнопка, при нажатии на которую открывается обычная (не LoginForm) форма. Мне нужно, чтобы эта вот открывающаяся форма получила такие свойства: Height (открывающейся формы)=ClientHeight (от MainForm) Widht (открывающейся формы)=ClientWidth (от MainForm). В общем, чтобы размер открывающейся формы зависел от клиентских размеров своего Parent. У меня на MainForm в самом верху закреплена UniContainerPanel, т.е. ClientHeight у MaiForm уменьшен на высоту этой UniContainerPanel. Таким образом получается, что открывающаяся через кнопку форму должна быть ниже UniContainerPanel, но по ширине в пределах своего Parent (т.е. в пределах MainForm). Quote Link to comment Share on other sites More sharing options...
Volk65 Posted June 27, 2019 Share Posted June 27, 2019 Установите у формы Align=alClient Quote Link to comment Share on other sites More sharing options...
artem_niko Posted June 27, 2019 Author Share Posted June 27, 2019 Just now, Volk65 said: Установите у формы Align=alClient Имеете ввиду AlignmentControl=uniAlignmentClient? У формы нет такого свойства, о котором Вы говорите. Quote Link to comment Share on other sites More sharing options...
Tokay Posted June 27, 2019 Share Posted June 27, 2019 А что мешает сделать то, что описано? Quote Height (открывающейся формы)=ClientHeight (от MainForm) Widht (открывающейся формы)=ClientWidth (от MainForm). присвоить просто после открытия (Show), либо перед (ShowModal), либо через метод открываемой формы, которая вначале присвоит размеры, потом сделает Show/ShowModal, смотря что нужно. Quote Link to comment Share on other sites More sharing options...
artem_niko Posted June 28, 2019 Author Share Posted June 28, 2019 6 hours ago, Tokay said: А что мешает сделать то, что описано? присвоить просто после открытия (Show), либо перед (ShowModal), либо через метод открываемой формы, которая вначале присвоит размеры, потом сделает Show/ShowModal, смотря что нужно. Ну, вот так вот я попробовал присвоить уже после открытия размеры: procedure TUFormDM.UniFormShow(Sender: TObject); begin UFormDM.Height:=Parent.ClientHeight; UFormDM.Width:=Parent.ClientWidth; end; А вот так вызываю форму свою: procedure TMainForm.UButton_StartClick(Sender: TObject); begin UFormDM.Parent:=MainForm; UFormDM.ShowModalN(); end; И это не работает... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.