Frage

Wie kann ich herausfinden, welches Tastaturlayout der Benutzer meiner Rubin Anwendung verwendet? Mein Ziel ist es, ein Spiel zu haben, in dem Sie den Spieler auf einer Karte bewegen können. Um einen Schritt nach unten gehen und einen Schritt nach links Sie „Y“ auf Deutsch Tastatur drücken. Auf einer amerikanische Tastatur, würden Sie „Z“ drücken. Wir optimieren das Spiel für Windows und Mac, also würde ich eine Lösung für beide Plattformen wie (und wir verwenden keine Befehl / Shift / control-Tasten).

War es hilfreich?

Lösung

Als Alexander empfohlen, damit der Benutzer die Tasten selbst definieren.

Aber, wenn Sie wirklich das Layout erkennen möchten, können Sie immer die Benutzer fragen, Schlüssel in bestimmten Positionen, insbesondere für einige Layouts drücken.

„Drücken Sie die zweite Taste links von der Return-Taste. Wenn die Return-Taste zwei Reihen hoch ist, drücken Sie die untere“
[Pressen ä]
„Sieht aus wie Sie eine skandinavisch-Tastatur haben“

Das ist aber eine schreckliche cludge, und im Spiel Zusammenhang würde die benutzerdefinierte Keymapping Methode empfehlen

Andere Tipps

Für Windows, müssen Sie wahrscheinlich die von Windows API GetKeyboardLayout () , es sei denn, Rubin stellt einen Wrapper für das.

Es gibt eine Menge von nützliche I18n Ressourcen für Windows auf der MSDN-Website .

Es könnte einfacher sein, einfach lassen sie es sich als Vorzug konfigurieren, wenn Sie es zum Nachweis keine gute tragbare Art und Weise haben.

Ich denke, es wird viel einfacher sein, und natürlich, damit die Benutzer Schlüssel selbst definieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top