- 326 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 18:23:34 ]
- JTextComponent でスペースバーが押されたらアクションを実行し、
その際空白文字は入力されないようにしたいのですが、 以下のようなやり方(いちおう動く)でよいのでしょうか? もっと一般的な方法はあるでしょうか? Keymap keymap = textComponent.getKeymap(); // スペースバーにアクションをマッピング KeyStroke stroke = KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0); keymap.addActionForKeyStroke(stroke, action); // スペースバーが押されても空白文字が入力されないようにする keymap.setDefaultAction(new DefaultEditorKit.DefaultKeyTypedAction() { @Override public void actionPerformed(ActionEvent ae) { String cmd = ae.getActionCommand(); if (!cmd.equals(" ")) { super.actionPerformed(ae); } } } );
|

|