- PR -

JTextFieldを使用したEnterキーでのフォーカス移動

1
投稿者投稿内容
KS
会議室デビュー日: 2005/11/18
投稿数: 7
投稿日時: 2005-12-05 11:52
お世話になります。

JTextFieldにてEnterキーでのフォーカス移動を行おうと思っています。(tabと同様の動き)

全角文字の時に、
[全角文字入力]→[Enterキーで全角文字を確定]→[Enterキーで次項目へ移動]という動かし方したいと思っています。
しかし、確定と次項目の移動が同時にされてしまいます。
上記のような動きの制御は可能なのでしょうか?

//==================================================
// ソース
//==================================================
public class Frame1 extends JFrame {
JTextField txt1 = new JTextField();
JTextField txt2 = new JTextField();

public Frame1() {
txt1.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(KeyEvent e) {
// Enterキーならtxt2項目へ移動
if (e.getKeyCode() == KeyEvent.VK_ENTER){
//↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
// ここで未確定文字ならreturnする処理
// を入れたらいいと思うのですが
//↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

txt2.requestFocus();
}
}
});
}
}

よろしくお願いします。
未記入
ぬし
会議室デビュー日: 2004/09/17
投稿数: 667
投稿日時: 2005-12-05 15:57
JTextField でエンターキーを押すと ActionEvent が発生するので、addKeyListener() ではなく addActionListener() を使えばよい。変換文字確定のためのエンターキー入力では ActionEvent は発生しないので都合がいい。
KS
会議室デビュー日: 2005/11/18
投稿数: 7
投稿日時: 2005-12-05 17:52
どうも、ありがとうございました。
解決できました。
ちょっと考えればできた事ですね。
難しく、考えすぎたようです。
もっと、頭を柔らかくしないといけないですね。
1

スキルアップ/キャリアアップ(JOB@IT)