9 votos

Imposible pulsar tres teclas cercanas

Nunca me había fijado en esto, pero parece que MacOS impide que se pulsen ciertas combinaciones de teclas.

Por ejemplo, pruebe a pulsar al mismo tiempo las teclas z s y c en un teclado Qwerty estándar. Esto funciona y debería escribir algo como "csz". Pero si las tres teclas son adyacentes, por ejemplo z s y x En la mayoría de los casos, MacOS deja caer uno o dos, o todos, por ejemplo, dando sólo "z" o "zx" o nada en absoluto. He notado esto constantemente en varios dispositivos Mac.

Dado que estoy programando un software que depende en gran medida de varias combinaciones de teclas (es un teclado MIDI virtual que transforma el teclado del ordenador en un controlador MIDI), ¿cómo desactivar este comportamiento?

21voto

theonlygusti Puntos 184

Se trata de una limitación de hardware del teclado integrado (y de la mayoría de los teclados de consumo que no son para jugadores)

Tienes que conseguir un teclado independiente que soporte NKRO (N-Key Rollover).

Puede haber problemas de compatibilidad de MacOS con algunos teclados n-key rollover El teclado USB se comporta de forma extraña con el MacBook Pro

Así que comprueba si es compatible antes de comprar

6voto

benwiggy Puntos 8

El uso del Visor de Teclado de MacOS te da una buena visión general del problema. Si mantienes pulsadas Z y X, y luego intentas pulsar otras teclas, verás que S, A, Q, W, 1 y 2 no se activan, pero todas las demás teclas sí.

Del mismo modo, mantener la CV hace que DFER34 deje de funcionar. MN detiene a HJYU67.

enter image description here

Es posible que desee utilizar la función de bajo nivel keyDown(with:) y keyUp(with:) métodos de NSResponder o de otras APIs utilizadas para las llaves de juego, antes de confirmar que se trata de una limitación de hardware.

(Tenga en cuenta que la ayuda a la programación está fuera de lugar aquí: intente Stack Overflow para más información).

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

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

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X