![]()  | 
	
 
  | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Использую MDI формы. 
		
	
		
		
		
		
		
		
			В связи с этим возникли вопросы 1. Как огранить область передвижения для MDIChild областью MDIParent, чтобы при выходе за пределы не повлялись ScrollBox'ы, а просто дочернее окно не смогло бы двигаться дальше. 2. При нажатии кнопки Maximize (развёртывании).. форма MDIChild разваричается за клиентскую область MDIParent и после чего кнопки заголовка окна MDIChild недоступны. как решить эту проблему Спасибо Последний раз редактировалось JcN, 22.05.2009 в 02:41.  | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Насчёт 2 - создай MainMenu, хотяб просто с Файл-Выход. Кнопки будут появляться справа. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	Про первое - сейчас пороюсь в делфиворлде, чтото было...  | 
| 
		 
			 
			#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  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Спасибо большое! 
		
	
		
		
		
		
		
	
		
		
	
	
	 |