![]() |
|
#1
|
|||
|
|||
![]() Использую MDI формы.
В связи с этим возникли вопросы 1. Как огранить область передвижения для MDIChild областью MDIParent, чтобы при выходе за пределы не повлялись ScrollBox'ы, а просто дочернее окно не смогло бы двигаться дальше. 2. При нажатии кнопки Maximize (развёртывании).. форма MDIChild разваричается за клиентскую область MDIParent и после чего кнопки заголовка окна MDIChild недоступны. как решить эту проблему Спасибо Последний раз редактировалось JcN, 22.05.2009 в 02:41. |
#2
|
||||
|
||||
![]() Насчёт 2 - создай MainMenu, хотяб просто с Файл-Выход. Кнопки будут появляться справа.
Про первое - сейчас пороюсь в делфиворлде, чтото было... Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
|||
|
|||
![]() Ограничить область перемещения окна можно так.
А так можно сделать, чтобы дочерняя форма разворачивалась только на всю клиентскую область родительской (чтобы системное меню с кнопками оставалось видимым): Код:
procedure WMSIZE(var Msg: TMessage); message WM_SIZE; ................................ procedure TForm2.WMSIZE(var Msg: TMessage); begin inherited; if Msg.WParam = SIZE_MAXIMIZED then begin ShowWindow(Handle, SW_RESTORE); Left := 0; Top := 0; Width := Form1.ClientWidth - 4; // бордюр 4 px... Height := Form1.ClientHeight - 4; end; end; P.S. Эту процедуру нужно вписать в Unit дочерней формы. P.P.S. Забыла пояснить, что у меня в этом примере Form1 —fsMDIForm, а Form2 — fsMDIChild. Последний раз редактировалось Nyctos Kasignete, 22.05.2009 в 15:14. |
#4
|
|||
|
|||
![]() Спасибо большое!
|