Главная страница
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.028 c
14-15839
Marser
2003-01-16 23:25
2003.02.06
Фильм


1-15717
Nikolai_S
2003-01-27 18:12
2003.02.06
Настройка внешнего вида TListView


1-15677
Yr2
2003-01-24 21:55
2003.02.06
TNMGeneralServer


3-15486
SeRZh
2003-01-20 18:18
2003.02.06
Новичок


1-15533
first_aid
2003-01-27 06:00
2003.02.06
Вопрос к тем кто использует в своих программах темы Win XP.