如何将鼠标控制在一个窗口内活动?

解决方案 »

  1.   

    使用Win32的API 
    ::ClipCursor(Rect yourRect);
      

  2.   

    ClipCursor Function--------------------------------------------------------------------------------The ClipCursor function confines the cursor to a rectangular area on the screen. If a subsequent cursor position (set by the SetCursorPos function or the mouse) lies outside the rectangle, the system automatically adjusts the position to keep the cursor inside the rectangular area. SyntaxBOOL ClipCursor(          const RECT *lpRect
    );
    ParameterslpRect
    [in] Pointer to the RECT structure that contains the screen coordinates of the upper-left and lower-right corners of the confining rectangle. If this parameter is NULL, the cursor is free to move anywhere on the screen. 
    Return ValueIf the function succeeds, the return value is nonzero.If the function fails, the return value is zero. To get extended error information, call GetLastError. 
    ResThe cursor is a shared resource. If an application confines the cursor, it must release the cursor by using ClipCursor before relinquishing control to another application. The calling process must have WINSTA_WRITEATTRIBUTES access to the window station.