Pregunta

¿Cómo puedo saber qué diseño de teclado está utilizando el usuario de mi aplicación ruby? Mi objetivo es tener un juego, donde puedas mover al jugador en un mapa. Para ir un paso hacia abajo y un paso a la izquierda, presione " S " en un teclado alemán. En un teclado estadounidense, debe presionar " Z " ;. Optimizamos el juego para Windows y Mac, así que me gustaría una solución para ambas plataformas (y no usamos ningún comando / shift / teclas de control).

¿Fue útil?

Solución

Como recomendó Alexander, deje que el usuario defina las claves por sí mismo.

Pero, si realmente desea reconocer el diseño, siempre puede pedirle al usuario que presione las teclas en ciertas posiciones, en particular en algunos diseños.

" Presione la segunda tecla a la izquierda de la tecla de retorno. Si su tecla de retorno tiene dos filas de altura, presione la tecla inferior "
[presiona ä ]
" Parece que tienes un teclado escandinavo "

Sin embargo, esto es un horrible cludge y, en el contexto del juego, recomendaría el método de asignación de teclas personalizado

Otros consejos

Para Windows, probablemente tenga que usar Windows API GetKeyboardLayout () , a menos que Ruby proporcione un contenedor para eso.

Hay un montón de recursos I18n útiles para Windows en el sitio web de MSDN .

Podría ser más fácil simplemente permitirles configurarlos ellos mismos como una preferencia si no tienes una buena forma portátil de detectarla.

Creo que será mucho más fácil y natural permitir que los usuarios definan las claves por sí mismos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top