Mausbewegung ablenken



  • Hallo Leute,

    ich schreib grad ein Programm in dem die Maus von A nach B bewegt werden soll. Nun soll diese Bewegung um einen vorgegebenen Wert z.B. 20 Grad nach links abgelenkt werden.
    Ich habs schon mit WM_MOUSEMOVE um die Bewegung zu registrieren und GetCursor() und SetCursor() um den Mauszeiger neu zu positionieren versucht doch das klappt nicht wirklich. 😞

    so hatte ich mir das gedacht:

    [/code]
    case WM_MOUSEMOVE:
    {
    POINT pt;

    GetCursorPos( &pt);

    SetCursorPos(pt.x+1, pt.y);

    break;

    }
    [code]

    Hat von euch einer ne Idee wie man das machen könnte.
    Am besten noch unabhängig von der Bildschirmauflösung.

    Danke im vorraus

    InfoHansen



  • Moin, du könntest die Position relativ zu der Desktop hoehe und Breite angeben, Werte erhältst du z.b. so: GetSystemMetrics(SM_CXSCREEN);
    GetSystemMetrics(SM_CYSCREEN);

    und der Rest ist Rechnerei.

    Mfg Anon



  • Ah ok.
    Das werd ich ausprobieren.

    Danke erstmal. 👍



  • MouseNotifications
    MSDN Referenz: http://msdn.microsoft.com/en-us/library/dd458632(VS.85).aspx

    case WM_MOUSEMOVE:
    {
    
        // Retrieve mouse screen position
        int x=(short)LOWORD(lParam);
        int y=(short)HIWORD(lParam);
    
    }
    

Anmelden zum Antworten