Mam forme i chce zeby myszka mogla poruszac sie tylko w obrebie formy a po nacisnieciu klawisza po calym ekranie swobodnie... jak to zorbic..
ClipCursor + Windows SDK lub FAQ
Jesli chcesz ustawic obszar myszy to zrob tak.
VAR
mycha:Trect;
zadeklaruj to na samym poczatku.
begin
//--wskazuje na lewy gorny rog
getclipcursor(mycha);
mycha.Left:=strtoint(d1);
mycha.Top:=strtoint(d2);
Clipcursor(@mycha);
//--wskazuje na prawy dolny rog
getclipcursor(mycha);
mycha.Right:=strtoint(d3);
mycha.Bottom:=strtoint(d4);
Clipcursor(@mycha);
end;
Teraz zamiast d1..d4 podajesz odpowiednie wartosci w pixelach
<b>ODBLOKOWANIE MYCHY</b>
Aby odblokowac mysz musisz uzyc tego:
setrect(mycha,0,0,screen.width,screen.height);
Clipcursor(@mycha);
<b>BLOKOWANIE CALKOWITE</b>
Aby Od razu zablokowac myche wpisz to co wyzej z parametrami
d1..d4 rownymi 0
Przy starcie programu pobierz parametry okna glownego [Form1] i wstaw je pod d1..d4 oczywiscie wszystko w On create
Musze dodac ze tam wystepuje
strToInt(d1) ja to zrobilem na swoje potrzeby i wtedy
d1:='100'
jesli podjemy porownanie do okienka albo same liczby to mozemy napisac :
mycha.Right:=100;
mycha.Right:=screen.width
Pozdro