ホームページ  >  記事  >  ActionMapからキーを取得する方法

ActionMapからキーを取得する方法

WBOY
WBOY転載
2024-02-09 13:15:18848ブラウズ

phpエディタXiaoxinは今日、ActionMapからキーを取得する方法を紹介します。 PHP プログラムを作成するときは、連想配列 (ディクショナリとも呼ばれます) をよく使用します。ActionMap は一般的な連想配列です。キーを使用して対応する値を取得することで、より柔軟なデータ処理とロジック制御を実現できます。以下では、誰もがこのテクニックをよりよく理解して適用できるように、ActionMap からキーを取得する方法を詳しく紹介します。

質問内容

アクションマップのAbstractActionからキーコードを取得する方法を知りたいです。

リーリー

すべてのキーの状態 (押されているかどうか) を、getInputManager を介してアクセスされる HashMap に保存しようとしています。キーが押されたかどうかを確認するには、KeyInputManager.getKeyDown(keyCode) を使用します。 これは KeyInputManager のコードです <pre class="brush:php;toolbar:false;">for (int key = 37; key &lt;= 122; key++) { this.key = key; if(!KeyEvent.getKeyText(key).contains(&quot;Unknown keyCode&quot;)) { if(KeyInputManager.getInputManager().getOrDefault(key, null) == null) KeyInputManager.getInputManager().put(key, true); component.getActionMap().put(KeyEvent.getKeyText(key), new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { int keyCode = // TODO: GET KEY CODE HERE KeyInputManager.getInputManager().replace(keyCode, true); } }); component.getInputMap().put(KeyStroke.getKeyStroke(key, 0, false), KeyEvent.getKeyText(key)); } }</pre>

解決策

これを試してください:

リーリー

ActionEvent のアクション コマンドには基本的にキーが含まれており、単一文字のキーを使用しているため、最初の文字を取得すると整数のキー コードが得られます。

以上がActionMapからキーを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。