Kaije
Kaije

Reputation: 2661

How to set the area/rectangle in which the cursor is allowed to move?

E.g. when you hit the side of your monitor your cursor can't go any further, and more of an example is when in microsoft paint, and your choosing a colour from the RGB table, it won't allow your mouse to go outside of the rectangle while your mouse is down..

my question is how would you implement that in c++ with win32 api?

Upvotes: 3

Views: 1469

Answers (2)

Rod
Rod

Reputation: 55782

You can use the following function from Microsoft

BOOL WINAPI ClipCursor(
  __in_opt  const RECT *lpRect
); 

See http://msdn.microsoft.com/en-us/library/ms648383(VS.85).aspx

Upvotes: 2

Andreas Rejbrand
Andreas Rejbrand

Reputation: 108963

Use the ClipCursor function. Simply provide the rectangle to confine the cursor to. To release the mouse (that is, to restore normal behaviour), simply pass NULL to the function instead of a pointer to a rect structure.

Upvotes: 1

Related Questions