Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
[Funkce přidružená k této stránce, Joysticks, je starší funkce. Je nahrazen Oborem názvů Windows.Gaming.Input. Jmenný prostor Windows.Gaming.Input byl optimalizován pro Windows 10 a Windows 11. Microsoft důrazně doporučuje, aby nový kód používal Windows.Gaming.Input namespace místo Joysticks, pokud je to možné. Microsoft navrhuje, aby se stávající kód, který používá starší rozhraní API, přepsal, aby se nová rozhraní API používala, pokud je to možné.]
Následující příklad ukazuje, jak může aplikace reagovat na pohyby joysticku a změny ve stavech tlačítka. Když joystick změní pozici, aplikace přesune kurzor a pokud je některé z tlačítek stisknuto, nakreslí na pracovní ploše díru po kulce. Když je tlačítko joysticku stisknuto, aplikace nakreslí díru na ploše a přehraje zvuk nepřetržitě, dokud se tlačítko uvolní. Zprávy, které je třeba sledovat, jsou MM_JOY1MOVE, MM_JOY1BUTTONDOWNa 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;