4

イベントベースのメソッドを使用せずに、キーの状態 (押されているかどうか) を確認する必要があります。キー状態の保存は機能しません。キーのリアルタイムの状態を確認する必要があります。誰でも方法を知っていますか?プラットフォームは JCreator v5.0 LE です

4

1 に答える 1

3

キーが押されるたびkeyPressed()に 、keyReleased()、およびが確実に呼び出される方法を見て、要点が正確にはわかりません。keyTyped()

また、状態の保存が機能していないと言いました。このようなことを試しましたか?

boolean[] keys = new boolean[222]; // 222 is the highest keyCode value i know

public void keyPressed(KeyEvent e) { keys[e.getKeyCode()] = true; }
public void keyReleased(KeyEvent e) { keys[e.getKeyCode()] = false; }

// True is pressed, False is released
public boolean getState(int keyCode) {
  return keys[keyCode];
}

これは、キーの「リアルタイム」状態をチェックする最も合理的な方法です。を使用せずにコンピューターにキーの状態を尋ねることはできませんListener。おそらく、「リアルタイム」状態が必要な理由についてさらに情報があれば、より良い答えが得られるでしょう。

于 2012-10-22T18:24:46.903 に答える