9 votes

Impossible d'appuyer sur trois touches proches

Je n'ai jamais remarqué cela auparavant, mais il semble que MacOS empêche l'utilisation de certaines combinaisons de touches.

Par exemple, essayez d'appuyer en même temps sur les touches z s y c sur un clavier Qwerty standard. Cela fonctionne et devrait écrire quelque chose comme "csz". Mais si les trois touches sont toutes adjacentes, par exemple z s y x MacOS en laisse tomber un, deux ou tous, par exemple en vous donnant juste "z" ou "zx" ou rien du tout. J'ai remarqué ce phénomène de manière constante sur plusieurs appareils Mac.

Puisque je programme un logiciel qui dépend fortement de diverses combinaisons de touches (c'est un clavier MIDI virtuel qui transforme le clavier de l'ordinateur en un contrôleur MIDI), comment désactiver ce comportement ?

21voto

theonlygusti Points 6434

Il s'agit d'une limitation matérielle du clavier intégré (et de la plupart des claviers grand public non destinés aux joueurs).

Vous devez vous procurer un clavier séparé qui prend en charge NKRO (N-Key Rollover).

Il peut y avoir des problèmes de compatibilité avec MacOS pour certains claviers n-key rollover. Le clavier USB se comporte étrangement avec le MacBook Pro

Vérifiez donc s'il est compatible avant d'acheter.

6voto

benwiggy Points 21125

L'utilisation du visualiseur de clavier de MacOS vous donne un bon aperçu du problème. Si vous maintenez les touches Z et X enfoncées, puis essayez d'appuyer sur d'autres boutons, vous verrez que S, A, Q, W, 1 et 2 ne s'activeront pas, mais que toutes les autres touches le feront.

De même, le maintien de la CV empêche le DFER34 de fonctionner. MN arrête HJYU67.

enter image description here

Vous pouvez utiliser l'option de bas niveau keyDown(with:) y keyUp(with:) méthodes de NSResponder ou d'autres API utilisées pour les clés de jeu, avant de confirmer qu'il s'agit d'une limitation matérielle.

(Notez que l'aide à la programmation est hors sujet ici : essayez Stack Overflow pour une discussion plus approfondie).

https://code.bitbebop.com/MacOS-game-keyboard-input/

https://developer.apple.com/documentation/gamecontroller/gckeyboardinput

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X