Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Scroll у MDIMain [D6]


Petro_ ©   (2005-05-23 21:39:00) 

добрый вечер.
Уважаемые мастера скажите можно ли убрать прокрутку
у MdiMain для горизонтали и вертикали при сдвигании
Mdichild.
Спасибо.


Игорь Шевченко   (2005-05-24 10:06:00) [1]

Johnmen ©   (23.05.05 22:29) [1]

Автор - Peter Below


Johnmen   (2005-05-23 22:29:00) [2]

Можно.
В своё время приводил И.Шевченко, хотя от авторства открещивался :)

procedure TMainForm.FormCreate(Sender: TObject);
begin;
 if ClientHandle<>0 then begin;
   if GetWindowLong(ClientHandle,GWL_USERDATA)<>0 then Exit;
   SetWindowLong(ClientHandle,GWL_USERDATA,
     SetWindowLong(ClientHandle,GWL_WNDPROC,integer(@ClientWindowProc)));
   end;
 end;
----------
function ClientWindowProc(wnd: HWND;
                         msg: Cardinal;
              wparam, lparam: Integer ): integer; stdcall;
var f : pointer;
begin;
 f:=pointer(GetWindowLong(wnd,GWL_USERDATA));
 case msg of
   WM_NCCALCSIZE : if (GetWindowLong(wnd,GWL_STYLE) and
                     (WS_HSCROLL or WS_VSCROLL))<>0 then
                     SetWindowLong(wnd,GWL_STYLE,GetWindowLong(wnd,GWL_STYLE)
                       and not (WS_HSCROLL or WS_VSCROLL));
   end;
 Result:=CallWindowProc(f,wnd,msg,wparam,lparam);
 end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо