Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Detect when mouse leaves program window
#24
(09-10-2023, 12:28 AM)grymmjack Wrote: Try putting `WHILE _MOUSEINPUT`: ... `WEND`

Inside inner loop, have tight mouse loop.

Hi grymmjack, thank for suggestion.
I have done different attempts but they haven't solved the issue.

Code: (Select All)
Rem the goal: we wanto to detect if mouse is out o in window's area

Rem the idea is to evaluate the position of the mouse at starting of the run of the application
Rem if QB64 does not set mouse in an that area at run time, we can set position of mouse with related functions

Option _Explicit

Dim S As Long
Dim As Integer W, H, Xms, Yms, XM, YM, Wrange, Hrange

W = 800: H = 600
S = _NewImage(W, H, 32)
_MouseMove 1, 1
Wrange = 1 'W - 1
Hrange = 1 'H - 1

Do
    '  If _MouseInput Then
    While _MouseInput
        Xms = _MouseX
        Yms = _MouseY
        XM = _MouseMovementX
        YM = _MouseMovementY
        Wrange = Wrange + XM
        Hrange = Hrange + YM
        Print Xms; " "; Yms, XM; " "; YM, Wrange; " "; Hrange
        If (Wrange < 0) Then Print "Mouse out on the left"
        If (Wrange > W) Then Print "mouse out on the right"
        If (Hrange < 0) Then Print "mouse out on the top"
        If (Hrange > H) Then Print " mouse out on the bottom"
    Wend
    ''' a trick: if mouse is on the border and XM is not 0 it goes out of window
    ''If (Xms = 1 And XM) Then Print "Mouse out on the left"
    ''If (Xms = 80 And XM) Then Print "mouse out on the right"
    ''If (Yms = 1 And YM) Then Print "mouse out on the top"
    ''If (Yms = 25 And YM) Then Print " mouse out on the bottom"
    '   End If
    '    _Limit 200 ' _delay 0.001
Loop Until InKey$ <> ""
End
I have tried to use an IF _MOUSEINPUT THEN but the rsult is the same
I have evaluated different ways to calculate and adjourn the position o f mouse with the saame results.
I have used also your suggeston but I arrived at the the same point.

I'm going to do a study code of _MousemovementX & _mousemovemeentY.
Reply


Messages In This Thread
RE: Detect when mouse leaves program window - by TempodiBasic - 09-10-2023, 10:41 PM



Users browsing this thread: 13 Guest(s)