Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.29;
Скачать: CL | DM;

Вниз

MDI форма в пределах окна?   Найти похожие ветки 

 
ddd329   (2011-02-20 14:10) [0]

Скажите можно ли сделать так, чтобы MDI форма не выходила за пределы главного окна? Пробовал как описано здесь: http://www.delphiexpert.ru/view_lesson.php?id=60, для главного окна работает, а для MDI формы нет.


 
clickmaker ©   (2011-02-20 14:22) [1]

> чтобы MDI форма не выходила за пределы главного окна

MDIChild?


 
sniknik ©   (2011-02-20 15:44) [2]

> Пробовал как описано здесь:
как пробовал? скопипастил? так там как ограничители используются координаты рабочего стола, или заменил их на координаты формы? тогда как? у тебя там ошибка.


 
ddd329   (2011-02-20 16:04) [3]

Заменил на координаты главной формы


 
sniknik ©   (2011-02-20 16:08) [4]

в каком виде?


 
sniknik ©   (2011-02-20 16:10) [5]

координаты они разные бывают... это еще Эйнштейн заметил, сказав - "все в мире относительно".


 
ddd329   (2011-02-20 16:11) [6]

procedure TForm1.WMMoving(var Msg: TWMMoving);
var
workArea: TRect;
begin
workArea := Screen.WorkareaRect;//здесь замени на: workArea := form.clientRect
with Msg.DragRect^ do
begin
if Left < workArea.Left then
OffsetRect(Msg.DragRect^, workArea.Left - Left, 0) ;
if Top < workArea.Top then
OffsetRect(Msg.DragRect^, 0, workArea.Top - Top) ;
if Right > workArea.Right then
OffsetRect(Msg.DragRect^, workArea.Right - Right, 0) ;
if Bottom > workArea.Bottom then
OffsetRect(Msg.DragRect^, 0, workArea.Bottom - Bottom) ;
end;
inherited;
end;


 
clickmaker ©   (2011-02-20 16:17) [7]

form.BoundsRect


 
sniknik ©   (2011-02-20 16:17) [8]

> //здесь замени на: workArea := form.clientRect
ну тогда поставь главную форму, началом, в верхний левый угол и наслаждайся...

p.s. экранные координаты <> координатам формы.


 
sniknik ©   (2011-02-20 16:22) [9]

> form.BoundsRect
не совсем верно будет, т.к. там без учета "бордюра", и поэтому сдвиг вправо/вниз чуть перекроет клиентскую область что приведет к появлению скроллов.
т.е. ручками все таки придется поработать.


 
ddd329   (2011-02-20 16:25) [10]

Да, да  спасибо)))



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

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

Наверх




Память: 0.48 MB
Время: 0.006 c
15-1297727471
KilkennyCat
2011-02-15 02:51
2011.05.29
Как можно успеть?!


15-1296946015
xayam
2011-02-06 01:46
2011.05.29
Распределённые вычисления и WCG


15-1295954003
Andy BitOff
2011-01-25 14:13
2011.05.29
Новый форум


2-1297950993
Неважно
2011-02-17 16:56
2011.05.29
BMP в массив и обратно


8-1212573355
Alex
2008-06-04 13:55
2011.05.29
GIF - > BMP на WinApi/DLL. Как?