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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
7-15951
Olimpik
2002-11-25 20:16
2003.02.06
Работа с реестром под бесправным юзером


4-15977
Zhenya_g
2002-12-22 15:02
2003.02.06
проблема при свертывании в трей


9-15380
kornoman
2002-08-12 07:09
2003.02.06
Ошибка с DelphiX


7-15945
Yelchev
2002-11-26 15:56
2003.02.06
Вопрос о MSGINA.DLL


1-15696
Anton
2003-01-27 15:25
2003.02.06
Какая комбинация быстрее