//------------------------------------------------------------------------------
// Auteur ........ BeLZeL
// Idée .......... gRRosminet (http://tcharles.developpez.com/simul/?delphi=0)
// Compilateur ... DevCpp 4.9.8.10
// Date .......... 24 juin 2004
// Description ... Déplacer le curseur de la souris grâce au clavier
//                   Touches Flechées : Déplacement
//                              Echap : Quitter
//------------------------------------------------------------------------------

#include <windows.h>

int main(int argc, char * argv[])
{
    POINT pt;                   // stockage des coordonnées de la souris
    BOOL bContinue = TRUE;      // booleen de test pour la boucle while
    const SHORT Mask = 32768;   // Un masque car on utilise pas tous les bits

    while (bContinue)
    {
        // On quitte le programme en appuyant sur Echap
        if (GetKeyState(VK_ESCAPE) & Mask) bContinue = FALSE;
          
        // On récupère les coordonnées actuelles de la souris
        GetCursorPos(&pt);
          
        // En fonction des touches flechées, on bouge le pointeur
        if (GetKeyState(VK_UP) & Mask)    pt.y -= 1;
        if (GetKeyState(VK_DOWN) & Mask)  pt.y += 1;
        if (GetKeyState(VK_LEFT) & Mask)  pt.x -= 1;
        if (GetKeyState(VK_RIGHT) & Mask) pt.x += 1;
        SetCursorPos(pt.x,pt.y);
          
        // Une petite attente pour ne pas déplacer le curseur trop vite
        Sleep(10);
    }

    return 0;
}

//------------------------------------------------------------------------------
// EOF
//------------------------------------------------------------------------------