SetMouse

Sets the position and visibility of the mouse cursor

Syntax
   Declare Function SetMouse ( ByVal x As Long = -1, ByVal y As Long = -1, 
   ByVal visibility As Long = -1, ByVal clip As Long = -1 ) As Long

Usage
   result = SetMouse([ x ] [, [ y ] [, [ visibility ] [, [ clip ]]]])

Parameters
   (For each parameter, -1 is a special value indicating "no changes.")
   x
      optional - set x coordinate
   y
      optional - set y coordinate
   visibility
      optional - set visibility: 1 indicates visible, 0 indicates hidden
   clip
      optional - set clipping: 1 indicates mouse is clipped to graphics 
      window, 0 indicates no clipping

Return Value
   Zero (0) on success, non-zero to indicate failure.

Description
   SetMouse will set the (x, y) coordinates of the mouse pointer, as well 
   as setting its visibility.  The mouse position is set using the x and y 
   parameters.  The mouse will be visible if visibility is set to 1, and 
   invisible if visibility is set to 0.  SetMouse is intended for graphics 
   modes initiated using the Screen (Graphics) statement only.

   The error code returned by SetMouse can be checked using Err in the next 
   line. The function version of  SetMouse returns directly the error code 
   as a 32 bit Long.

Example
   Dim As Long x, y, buttons

   ' create a screen 640*480
   ScreenRes 640, 480
   Print "Click the mouse button to center the mouse"

   Do
      ' get mouse x, y and button state (wait until mouse is onscreen)
      Do: Sleep 1: Loop While GetMouse( x, y , , buttons) <> 0

      If buttons And 1 Then
         ' on left mouse click, center mouse
         SetMouse 320, 240
      End If

      ' run loop until a key is pressed or the window is closed
   Loop While Inkey = ""

Dialect Differences
   * Not available in the -lang qb dialect unless referenced with the 
     alias __Setmouse.

Differences from QB
   * New to FreeBASIC

See also
   * GetMouse
   * Screen
   * MultiKey
   * GetKey

