Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.12.20;
Скачать: 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 вся ветка

Текущий архив: 2009.12.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-1229527638
Afonya
2008-12-17 18:27
2009.12.20
Работа с окном другого приложения


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


15-1255966439
oldman
2009-10-19 19:33
2009.12.20
Говорят, сегодня День лицеев.


2-1257113690
HRustBB
2009-11-02 01:14
2009.12.20
как вернуть значение переменной по указателю ?


6-1210676882
MishaLuk
2008-05-13 15:08
2009.12.20
работа с базой по сети