MOUSEMOVEMENTY: Difference between revisions
Jump to navigation
Jump to search
Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link
No edit summary |
No edit summary |
||
Line 13: | Line 13: | ||
{{PageExamples}} | |||
; Example 1: Since values returned are relative to the last position, the returns can be positive or negative. | |||
{{CodeStart}} | {{CodeStart}} | ||
{{Cl|SCREEN}} | {{Cl|SCREEN}} {{Text|12|#F580B1}} | ||
{{Cl|DO...LOOP|DO}}: {{Cl|_LIMIT}} 200 | PX = {{Text|320|#F580B1}}: PY = {{Text|240|#F580B1}} {{Text|<nowiki>'center position</nowiki>|#919191}} | ||
{{Cl|DO}}: {{Cl|_LIMIT}} {{Text|200|#F580B1}} | |||
{{Cl|DO...LOOP|DO WHILE}} {{Cl|_MOUSEINPUT}} | |||
PX = PX + {{Cl|_MOUSEMOVEMENTX}} | |||
PY = PY + {{Cl|_MOUSEMOVEMENTY}} | |||
{{Cl|LOOP}} | |||
{{Cl|CLS}} | |||
{{Cl|CIRCLE}} (PX, PY), {{Text|10|#F580B1}}, {{Text|10|#F580B1}} | |||
{{Cl|LOCATE}} {{Text|1|#F580B1}}, {{Text|1|#F580B1}}: {{Cl|PRINT}} PX, PY | |||
{{Cl|DO...LOOP|LOOP UNTIL}} {{Cl|INKEY$}} = {{Cl|CHR$}}({{Text|27|#F580B1}}) {{Text|<nowiki>'escape key exit</nowiki>|#919191}} | |||
{{ | {{CodeEnd}} | ||
---- | |||
; Example 2: MOD is used to keep horizontal movement of the circle and cursor inside of the SCREEN 13 window(320). | |||
: Note when using the function this way, then give the user a keypress exit option. Make sure the user has some way to exit that is not dependent on clicking the X button. | |||
{{CodeStart}} | |||
{{Cl|SCREEN}} {{Text|13|#F580B1}}, , {{Text|1|#F580B1}}, {{Text|0|#F580B1}} | |||
{{Cl|DO}}: {{Cl|_LIMIT}} {{Text|200|#F580B1}} | |||
{{Cl|DO...LOOP|DO WHILE}} {{Cl|_MOUSEINPUT}} | |||
x = x + {{Cl|_MOUSEMOVEMENTX}} | |||
y = y + {{Cl|_MOUSEMOVEMENTY}} | |||
{{Cl|LOOP}} | |||
x = (x + {{Text|320|#F580B1}}) {{Cl|MOD}} {{Text|320|#F580B1}} {{Text|<nowiki>'keeps object on screen</nowiki>|#919191}} | |||
y = (y + {{Text|200|#F580B1}}) {{Cl|MOD}} {{Text|200|#F580B1}} {{Text|<nowiki>'remove if off screen moves are desired</nowiki>|#919191}} | |||
{{Cl|CLS}} | |||
{{Cl|CIRCLE}} (x, y), {{Text|20|#F580B1}} | |||
{{Cl|PCOPY}} {{Text|1|#F580B1}}, {{Text|0|#F580B1}} | |||
{{Cl|DO...LOOP|LOOP UNTIL}} {{Cl|INKEY$}} <> {{Text|<nowiki>""</nowiki>|#FFB100}} {{Text|<nowiki>'press any key to exit</nowiki>|#919191}} | |||
{{CodeEnd}} | {{CodeEnd}} | ||
Latest revision as of 20:10, 24 March 2024
The _MOUSEMOVEMENTY function returns the relative vertical position of the mouse cursor as positive or negative values.
Syntax
- verticalMove = _MOUSEMOVEMENTY
- Returns the relative vertical cursor pixel position compared to the previous cursor position. Negative values are up moves.
- Note: A _MOUSESHOW statement will disable _MOUSEMOVEMENTX or _MOUSEMOVEMENTY relative mouse movement reads.
- Can also be used to check for any mouse movements to enable a program or close Screen Saver Programs.
- Sets the mouse to a relative movement mode which can be read by _WHEEL instead of _AXIS as mouse device 2.
Examples
- Example 1
- Since values returned are relative to the last position, the returns can be positive or negative.
SCREEN 12 PX = 320: PY = 240 'center position DO: _LIMIT 200 DO WHILE _MOUSEINPUT PX = PX + _MOUSEMOVEMENTX PY = PY + _MOUSEMOVEMENTY LOOP CLS CIRCLE (PX, PY), 10, 10 LOCATE 1, 1: PRINT PX, PY LOOP UNTIL INKEY$ = CHR$(27) 'escape key exit |
- Example 2
- MOD is used to keep horizontal movement of the circle and cursor inside of the SCREEN 13 window(320).
- Note when using the function this way, then give the user a keypress exit option. Make sure the user has some way to exit that is not dependent on clicking the X button.
SCREEN 13, , 1, 0 DO: _LIMIT 200 DO WHILE _MOUSEINPUT x = x + _MOUSEMOVEMENTX y = y + _MOUSEMOVEMENTY LOOP x = (x + 320) MOD 320 'keeps object on screen y = (y + 200) MOD 200 'remove if off screen moves are desired CLS CIRCLE (x, y), 20 PCOPY 1, 0 LOOP UNTIL INKEY$ <> "" 'press any key to exit |
See also
- _MOUSEMOVEMENTX
- _MOUSEINPUT, _MOUSEX
- _DEVICES, _DEVICEINPUT
- _WHEEL, _LASTWHEEL
- _AXIS, _LASTAXIS
- _MOUSESHOW, _MOUSEHIDE
- Screen Saver Programs