Главная страница
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.013 c
8-1202216536
dreamse
2008-02-05 16:02
2009.12.20
Существует ли решение ?


15-1256156099
POOP
2009-10-22 00:14
2009.12.20
Плиз, помогите найти книгу:


2-1257399696
Drowsy
2009-11-05 08:41
2009.12.20
Запрос на создание процедуры в IBase.


15-1255948768
VGK
2009-10-19 14:39
2009.12.20
Найти все палиндромы (перевертыши)?


1-1228947824
angvelem
2008-12-11 01:23
2009.12.20
C to pascal