• ベストアンサー

JButtonをCtrl+Fで押した状態にしたい

Javaの勉強をしている者です。 JavaSwingで作成した画面を表示中のとき、 キーボードで Ctrl + F と操作することで画面上の任意のボタンを押下した状態にするにはどうすればいいのか、ご存知の方がいらしたら教えてください。 キーボードニーモニックを用いれば Alt + F で上記のことが出来ることは存じておりますが Ctrl + F の方法が分からなくて困っています。 解決方法や参考となるURL等、何でもいいですので お答えいただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • e00083
  • ベストアンサー率31% (25/80)
回答No.1

KeyStroke.getKeyStroke(KeyEvent.VK_F, InputEvent.CTRL_DOWN_MASK)

hinako913
質問者

お礼

返事が遅くなって申し訳ございません。 e00083さんの書かれたコードを元にして、対応することができました。 とても助かりました。ありがとうございました。 とりあえず、以下のコードでやりたかったことを実装できたので、 今後の何かしらの参考になればと思い、書かせていただきます。 ※ あまりテストをしていないので問題があるかもしれませんが、そのへんはご容赦下さい // キーストロークの作成 KeyStroke CtrlF = KeyStroke.getKeyStroke(KeyEvent.VK_F, InputEvent.CTRL_DOWN_MASK); // インプットマップの取得 InputMap inputMap = getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW); // アクションマップの取得 ActionMap actionMap = getActionMap(); // KeyStrokeの登録 inputMap.put(CtrlF,"press"); // 対応するActionの登録(CtrlF_ActionはAbstractActionを継承したクラス) actionMap.put("press",new CtrlF_Action()); // ボタンにアクションマップの登録 m_btnTEST1.setActionMap(actionMap);

関連するQ&A