Главная страница
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.021 c
1-15711
VLL
2003-01-27 17:54
2003.02.06
Запуск внешнего приложения


4-15978
Ewgenij85
2002-12-22 19:16
2003.02.06
Свойства файла


6-15786
Georg
2002-12-13 14:42
2003.02.06
CGI-приложения


1-15558
Masa
2003-01-28 15:56
2003.02.06
CLX и VCL


8-15767
Vox
2002-10-26 16:42
2003.02.06
ТВ-Тюнер