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

Как ограничить клиентскую область главной MDI формы?   Найти похожие ветки 

 
Chubais ©   (2002-12-24 16:23) [0]

у меня внизу главной формы лежит панель, которую не замечают открывающиеся окна MDIChildren, то есть они раскрываются, нижней частью подлезают под эту панель. Как их заставить раскрываться только на свободном пространстве рабочего стола?
пробовал делать так:
в OnCreate главной формы
SetWindowLong(ClientHandle, GWL_USERDATA,SetWindowLong( ClientHandle,GWL_WNDPROC, integer( @ClientWindowProc)));
функция
function ClientWindowProc( wnd: HWND; msg: Cardinal; wparam, lparam: Integer ): Integer; stdcall;
begin
f := Pointer( GetWindowLong( wnd, GWL_USERDATA ));
case msg of
...
WM_NCCALCSIZE: begin
if wparam=1
then begin
NCCALCSIZE_PARAMS(pointer(lparam)^).rgrc[2].Bottom:=300; что так не работает
NCCALCSIZE_PARAMS(pointer(lparam)^).lppos^.cy:=400; что так
end;
end;
end;
Result := CallWindowProc( f, wnd, msg, wparam, lparam );
end;

как победить?


 
Игорь Шевченко ©   (2002-12-24 16:46) [1]

Мож, лучше WM_GETMINMAXINFO обрабатывать ?


 
Chubais ©   (2002-12-24 17:43) [2]

чо-то не получается(((((((((



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

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



Память: 0.45 MB
Время: 0.026 c
7-15960
Arkady
2002-12-02 10:48
2003.02.06
Буфер клавиатуры


14-15898
Kotka
2003-01-20 14:16
2003.02.06
Стоит посмотреть!


6-15783
_Ed_
2002-12-14 09:33
2003.02.06
Что-то типа URLLabel


3-15422
Oleg _K
2003-01-17 19:22
2003.02.06
Не инсталится BDE под WinXP


1-15580
=SOFT=
2003-01-28 15:05
2003.02.06
Как узнать и правильно обработать выбранный фильтр в SaveDialog




   Наверх