Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.16;
Скачать: CL | DM;

Вниз

Окошко на winapi   Найти похожие ветки 

 
maker ©   (2002-11-29 21:00) [0]

Мне необходимо перетаскивать окошко на winapi за его любую область...

Кусок кода:

function WindowProc (Window: HWND; Message, WParam: Cardinal;
LParam: Cardinal): Longint; stdcall;
begin
case Message of
WM_MOUSEMOVE:
begin
//Если я правильно думаю, то...
//MoveWindow(где добыть параметры)...
//Но шо-то у мя нифига не получается... :(
end;
...


 
apay ©   (2002-11-29 22:44) [1]

просто обмани винду и все:
...
case Message of
...
WM_NCHITTEST: begin
Result := HTCAPTION;
Exit;
end;
...
end;
...



 
Evgeny ©   (2002-11-30 07:39) [2]

Обманывать не надо - это вполне стандартная функция.

var
aRect: TRect;
pt : TPoint;
...
WM_NCHITTEST:
begin
Result := htClient;
pt.x := LoWord(lParam);
pt.y := HiWord(lParam);
ScreenToClient(Wnd, pt);
aRect := {твой Rect};
if PtInRect(aRect, pt) then // Если мышь там где предпологалось, то тащим окно
Result := htCaption;
Exit;
end;
...


 
maker ©   (2002-11-30 09:56) [3]

всё работает, спасибо!...


 
apay ©   (2002-11-30 17:43) [4]

> Evgeny ©
говоришь обманывать не надо:
Result := htCaption; - и есть обман.



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
1-49105
SinnerPro
2003-01-05 10:56
2003.01.16
Как что-то сделать перед закрытием приложения?


1-49157
Mik.rob
2003-01-06 00:47
2003.01.16
Глупый вопрос


4-49368
Шишкин Илья
2002-12-01 16:29
2003.01.16
Своя панель в Internet Explorer


3-48882
std79
2002-12-19 11:42
2003.01.16
Float поле в IB. 6,2 превращает в 6,19999980926514


1-49006
sergey2
2003-01-06 21:59
2003.01.16
Как сделать чтобы окно