Вниз
Скачать: CL | DM;

Границы родительской формы для MDI   Найти похожие ветки 

← →
Keba   (2009-10-31 15:50) [0]


type  
 TWmMoving = record  
   Msg: Cardinal;  
   fwSide: Cardinal;  
   lpRect: PRect;  
   Result: Integer;  
 end;  

// Добавляем обработчик на небходимую форму в секцию private:

procedure WMMoving(var msg: TWMMoving); message WM_MOVING;

// Описываем обработчик так

 procedure TForm1.WMMoving(var msg: TWMMoving);  
 var  
   r: TRect;  
 begin  
   r := Screen.WorkareaRect;  
  // сравниваем новую область формы в msg.lpRect^ с r и изменяем занчения при необходимости
   if msg.lprect^.left < r.left then  
    OffsetRect(msg.lprect^, r.left - msg.lprect^.left, 0);  
   if msg.lprect^.top < r.top then  
    OffsetRect(msg.lprect^, 0, r.top - msg.lprect^.top);  
   if msg.lprect^.right > r.right then  
    OffsetRect(msg.lprect^, r.right - msg.lprect^.right, 0);  
   if msg.lprect^.bottom > r.bottom then  
    OffsetRect(msg.lprect^, 0, r.bottom - msg.lprect^.bottom);  
   inherited;  
 end;

Как этот код добавить MDI форме, чтобы границей было не окно виндовса, а родительская форма?


← →
AIK ©   (2009-10-31 16:50) [1]

Вообще процедура кроме как обработки параметров переданной в msg: TWMMoving
Больше ничего не делает, и ответ на вопрос с этим огрызкам кода вряд ли получишь
Но логично предположить что ответ кроется гдето здесь: r := Screen.WorkareaRect;


> type  
>  TWmMoving = record  
>    Msg: Cardinal;
>    fwSide: Cardinal;
>    lpRect: PRect;  
>    Result: Integer;
>  end;


А они для чего? Для красоты чтоли?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.007 c
2-1256914960
Ivan
2009-10-30 18:02
2009.12.20
Список названий сетевых соединений


2-1257241912
Serge
2009-11-03 12:51
2009.12.20
Как сделать перенос текста в заголовке ListView?


2-1257319865
Андрей1982
2009-11-04 10:31
2009.12.20
Как обменять местами колонки в ListView?


2-1257184353
virtual dir
2009-11-02 20:52
2009.12.20
InProcServer32


15-1255957108
TUser
2009-10-19 16:58
2009.12.20
"ЯБЛОКО" не признает результаты выборов 11 октября




   Наверх