2017-04-09 7 views
0

ストレートポイント。私はビジュアルスタジオを使用して、私が作ってきたゲームを実行してきました。これまではC++でコーディングしていましたが、単一のキー入力にはVK_BACKや0x52などの入力を使用していました。しかし、私は現在、ゲームを実行している間に単語を入力できる必要があります。基本的には、プログラムに入力された単語を認識させる方法について質問しています。シーケンス内のキーを押して機能をトリガーする。マルチキーシーケンス入力を使用して機能を実現する

おかげで、ジャック・

+0

これをコードしようとしましたか?はいの場合は、あなたが試したことを教えてください。いいえの場合は、何かを試してみてから、やってみてください。 – 1201ProgramAlarm

答えて

0

あなたは推測する私たち次第多くを残してきた:

  1. あなたがキーボード入力を読み取るためには何を使用していますか?
  2. ストリーミングではなくポーリングを行っていると思いますか?
  3. また、非ブロック入力を想定していますか?

非常に多くの未知数があるため、この質問に役立つ回答をすることは困難です。しかし、あなたに役立つオプションがいくつかあります:

  1. すべてのキーボード入力に終端文字が必要です。これはブロック入力の特徴です。終端文字が置かれている場合にのみ、入力が読み取られます。
  2. 文字列を入力するときにモードキーを押す必要があります。たとえば、'a'を押すと、すぐにキーのコマンドが実行されますが、現在、左のCtrlキーを押していて、'a'を押すと、Ctrlキーが離されるまで文字列内のものとして扱われます。
  3. デリミタを使用します。 '\''が押された場合は、次の'\''キーが押されるまで、すべての文字からなる文字列入力の開始を示します。
  4. 瞬時入力キーとは別の文字列入力キーを作成します。これは、文字列入力の途中で瞬時に入力できるので、最も便利な解決策です。しかし、許容される文字列コマンドが明確に定義されていない場合には、ユーザーに不快感を与えることもあります。
+0

ジョナサン大変ありがとうございました。すべてのあなたの与えられたオプションは素晴らしいです。私のアマチュアマナーには申し訳ありませんが、私はかなり新しくコーディングしています。ナンバー4は私が探しているものです!私はあなたに不快感を与えたくありませんが、コーディングについてどう思いますか? –

+0

@JackHugh「シングルキー入力」と「マルチキー入力」があります。** 4 **では、「シングルキー入力」に使用されるキーは「マルチキー入力」では使用されません。たとえば、ワードプロセッサは基本的には "マルチキー入力"と呼んでいるキーボードの全体を使用しています*しかし*すべてのファンクションキーは "シングルキー入力"として予約されています。このパラダイムでは、ファンクションキーを取得した場合、そのキーが「シングルキー入力」であることがわかります。他のキーは、「マルチキー入力」に蓄積する必要があります。 –

関連する問題