Вниз
Скачать: CL | DM;

как ограничить передвижение мыши границами формы?   Найти похожие ветки 

 
Максим ©   (2003-04-01 09:33) [0]

Господа!
Есть загвоздка. Как при запуске проги ограничить передвижения мыши по экрану только границами формы. Можно попробовать через хук MOUSEPROC, но в Lparam она передает не координаты мыщи, а какуюто ссылку (помоему). Или еще как-то?


 
Игорь Шевченко ©   (2003-04-01 09:35) [1]

ClipCursor, но это плохой дизайн.


 
Polevi ©   (2003-04-01 10:31) [2]

хук нормально работает


 
Максим ©   (2003-04-01 11:31) [3]

а как в хуке вытащить координаты курсора?
Lparam содержит ссылку на структуру MOUSEHOOKSTRUCT или сами данные? Если ссылку, простите за тормоза, голова уже не варит, то как потом получить эти координаты с нее. Буду любезен за небольшой пример


 
Polevi ©   (2003-04-01 12:30) [4]

LRESULT CALLBACK MouseProc(
int nCode, // hook code
WPARAM wParam, // message identifier
LPARAM lParam // mouse coordinates
);

lParam
Pointer to a MOUSEHOOKSTRUCT structure.

typedef struct tagMOUSEHOOKSTRUCT { // ms
POINT pt;
HWND hwnd;
UINT wHitTestCode;
DWORD dwExtraInfo;
} MOUSEHOOKSTRUCT;



 
Polevi ©   (2003-04-01 12:36) [5]

type
PMouseHookStruct=^TMouseHookStruct
TMouseHookStruct=record
pt:TPoint;
hwnd:THandle;
wHitTestCode:UINT;
dwExtraInfo:DWORD;
end;

PMouseHookStruct(lParam).pt.x


 
Максим ©   (2003-04-01 14:36) [6]

Большое сенк. Вся загвоздка была в PMouseHookStruct(lParam).pt.x
Насчет этого я как - то не додумался.Не знал как передать ссылку на структуру



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-94837
PAI
2003-05-19 18:53
2003.05.29
Как создать потомка VCL-класса?


14-95016
Uran
2003-05-13 09:50
2003.05.29
Определение software, hardware.


4-95154
Num Lock
2003-04-01 09:53
2003.05.29
Зачем посылать WM_USER после TrackPopupMenu?


14-95087
race1
2003-05-10 14:26
2003.05.29
Cinema 4D


14-95067
Nick-From
2003-05-08 11:01
2003.05.29
Dealing with Forms (PHP)




   Наверх