Megosztás a következőn keresztül:


Joystick-üzenetek feldolgozása

[A laphoz társított funkció, Joysticksegy régi funkció. A Windows.Gaming.Input névtérlecserélte. Windows.Gaming.Input Namespace Windows 10-hez és Windows 11-hez lett optimalizálva. A Microsoft határozottan javasolja, hogy az új kódban a Windows.Gaming.Input Namespace használják a Joystickokhelyett, ha lehetséges. A Microsoft javasolja, hogy az örökölt API-kat használó meglévő kódot át kell írni az új API-k használatára, ha lehetséges.]

Az alábbi példa bemutatja, hogyan reagálhat egy alkalmazás a joystick mozgására és a gombállapotok változásaira. Amikor a joystick pozíciója megváltozik, az alkalmazás mozgatja a kurzort, és ha bármelyik gombot lenyomja, golyólyukat rajzol az asztalon. A joystick gomb megnyomásakor az alkalmazás lyukat rajzol az asztalra, és folyamatosan hangjelzést ad le, amíg el nem hangzik egy gomb. A figyelendő üzenetek MM_JOY1MOVE, MM_JOY1BUTTONDOWNés MM_JOY1BUTTONUP.

case MM_JOY1MOVE :                     // changed position 
    if((UINT) wParam & (JOY_BUTTON1 | JOY_BUTTON2)) 
        DrawFire(hWnd); 
    DrawSight(lParam);                 // calculates new cursor position 
    break; 
case MM_JOY1BUTTONDOWN :               // button is down 
    if((UINT) wParam & JOY_BUTTON1) 
    { 
        PlaySound(lpButton1, SND_LOOP | SND_ASYNC | SND_MEMORY); 
        DrawFire(hWnd); 
    } 
    else if((UINT) wParam & JOY_BUTTON2) 
    { 
        PlaySound(lpButton2, SND_ASYNC | SND_MEMORY |  SND_LOOP); 
        DrawFire(hWnd); 
    } 
    break; 
case MM_JOY1BUTTONUP :                 // button is up 
    sndPlaySound(NULL, 0);             // stops the sound 
    break;