Ruby アプリケーションのユーザーが使用しているキーボード レイアウトを確認するにはどうすればよいですか? 私の目標は、マップ上でプレイヤーを移動できるゲームを作ることです。1 段階下に移動し、1 段階左に移動するには、ドイツ語のキーボードで "Y" を押します。アメリカのキーボードでは、「Z」を押します。Windows と Mac 用にゲームを最適化したので、両方のプラットフォーム用のソリューションが必要です (コマンド/シフト/コントロール キーは使用しません)。
2431 次
3 に答える
2
Windows の場合、Ruby がそのラッパーを提供しない限り、おそらくWindows API GetKeyboardLayout()を使用する必要があります。
MSDN Web サイトには、Windows 用の便利な I18n リソースが多数あります。
それを検出するための適切な移植可能な方法がない場合は、設定として自分で構成できるようにする方が簡単かもしれません.
于 2008-10-15T18:38:41.420 に答える
1
ユーザーが自分でキーを定義できるようにする方が、はるかに簡単かつ自然になると思います。
于 2008-10-16T04:26:34.743 に答える
0
アレクサンダーが推奨したように、ユーザー自身がキーを定義できるようにします。
ただし、本当にレイアウトを認識したい場合は、特定のレイアウトで特定の位置でキーを押すように常にユーザーに依頼できます。
"Return キーの左にある 2 番目のキーを押します。Return キーが 2 行の高さの場合は、下のキーを押してください"
[キーを押すä
]
"スカンジナビア キーボードを使用しているようです"
ただし、これはひどいクラッジであり、ゲームのコンテキストでは、カスタム キーマッピング メソッドをお勧めします。
于 2008-10-16T05:02:17.810 に答える