{{DISPLAYTITLE:_MOUSEX}} The '''_MOUSEX''' function returns the current horizontal(column) mouse cursor position when read after [[_MOUSEINPUT]]. {{PageSyntax}} ::: pixelcolumn% = '''_MOUSEX''' ''Usage:'' * [[SCREEN]] 0 returns the [[SINGLE]] horizontal text column position. Use [[INTEGER]] variables to avoid floating decimal returns. * Graphic screen modes 1, 2 and 7 to 13 and [[_NEWIMAGE]] 32 bit return the [[INTEGER]] pixel columns. * To calculate text columns in graphic modes, divide the return by 8 or the [[_FONTWIDTH]] of [[_FONT]] characters. * [[_MOUSEINPUT]] MUST be used to detect any changes in the mouse position and is '''required''' for any coordinate returns. * '''Note:''' In [[SCREEN]] 0, Qbasic's [[ABSOLUTE]] returned graphic coordinates. QB64 mouse functions return the text coordinates. ''Example:'' A simple mouse drawing board using _MOUSEX and [[_MOUSEY]] coordinate values. {{CodeStart}} '' '' {{Cl|SCREEN (statement)|SCREEN}} 12 {{Cl|LINE}} (99, 9)-(601, 401), 7, BF {{Cl|LINE}} (101, 11)-(599, 399), 8, BF tm$ = " Column = ### Row = ### Button1 = ## Button2 = ## Button3 = ##" {{Cl|LOCATE}} 29, 20: {{Cl|PRINT}} "LeftButton = draw - RightButton = Erase"; {{Cl|DO}}: K$ = {{Cl|INKEY$}} {{Cl|DO}} {{Cl|WHILE}} {{Cl|_MOUSEINPUT}} X = {{Cl|_MOUSEX}}: Y = {{Cl|_MOUSEY}} {{Cl|IF}} X > 100 {{Cl|AND (boolean)|AND}} X < 600 {{Cl|AND (boolean)|AND}} PX > 100 {{Cl|AND (boolean)|AND}} PX < 600 {{Cl|THEN}} {{Cl|IF}} Y > 10 {{Cl|AND (boolean)|AND}} Y < 400 {{Cl|AND (boolean)|AND}} PY > 10 {{Cl|AND (boolean)|AND}} PY < 400 {{Cl|THEN}} {{Cl|IF}} {{Cl|_MOUSEBUTTON}}(1) {{Cl|THEN}} {{Cl|LINE}} (PX, PY)-(X, Y), 15 {{Cl|IF}} {{Cl|_MOUSEBUTTON}}(2) {{Cl|THEN}} {{Cl|LINE}} (101, 11)-(599, 399), 8, BF {{Cl|END IF}} {{Cl|END IF}} PX = X: PY = Y {{Cl|LOCATE}} 28, 10: {{Cl|PRINT USING}} tm$; X; Y; {{Cl|_MOUSEBUTTON}}(1); {{Cl|_MOUSEBUTTON}}(2); {{Cl|_MOUSEBUTTON}}(3) {{Cl|LOOP}} {{Cl|LOOP}} {{Cl|UNTIL}} K$ = {{Cl|CHR$}}(27) {{Cl|SYSTEM}} '' '' {{CodeEnd}} {{PageSeeAlso}} * [[_MOUSEY]], [[_MOUSEBUTTON]], [[_MOUSEWHEEL]] * [[_MOUSEINPUT]], [[_MOUSEMOVE]] * [[_MOUSESHOW]], [[_MOUSEHIDE]] * [[Controller_Devices]] {{PageNavigation}}