From QB64 Wiki
The _MOUSESHOW statement displays the mouse cursor and can determine its shape in GL.
- _MOUSESHOW [cursortype$]
- Simply use the statement whenever _MOUSEHIDE has been used previously.
- In QB64 GL the following STRING cursor types can be displayed:
- _MOUSESHOW "LINK" will display an upward pointing hand cursor used to denote hypertext
- _MOUSESHOW "TEXT" will display the I cursor often used in text entry areas
- _MOUSESHOW "CROSSHAIR" will display a crosshair cursor
- _MOUSESHOW "VERTICAL" will display vertical arrow cursor for movement
- _MOUSESHOW "HORIZONTAL" will display horizontal arrow cursor for movement
- _MOUSESHOW "TOPLEFT_BOTTOMRIGHT" will display bottom diagonal arrow cursor for movement
- _MOUSESHOW "TOPRIGHT_BOTTOMLEFT" will display bottom diagonal arrow cursor for movement
- _MOUSESHOW "DEFAULT" can be used after a mouse cursor statement above was previously used.
- This statement will also disable _MOUSEMOVEMENTX or _MOUSEMOVEMENTY relative mouse movement reads.
- The mouse cursor will not interfere with any print or graphic screen changes in QB64.
- _MOUSEHIDE statements do not accumulate like they did with ABSOLUTE or INTERRUPT in Qbasic.
Example 1: QB64 GL allows special cursors to be displayed by using special string parameters:
User32 "default": _DELAY 0.5 User32 "link": _DELAY 0.5 'a hand, typically used in web browsers User32 "text": _DELAY 0.5 User32 "crosshair": _DELAY 0.5 User32 "vertical": _DELAY 0.5 User32 "horizontal": _DELAY 0.5 User32 "topleft_bottomright": _DELAY 0.5 User32 "topright_bottomleft": _DELAY 0.5 END SUB User32 (c$) _MOUSESHOW c$ END SUB
- Note: There is no hourglass, stopwatch or spinning colorful wheel in the list. The fact is that these typically only appear in a program when something has gone terribly wrong and the program has crashed or frozen.
- _MOUSEX, _MOUSEY
- _MOUSEMOVEMENTX, _MOUSEMOVEMENTY
- _DEVICES, _DEVICE$