はじめまして。
今Jテキストフィールドを使用して、文字入力画面を作成しているのですが
問題が発生しています。バックスペースキーを入力禁止にしたいのですが、うまくいき
ません。バックスペースは禁止にすることは無理なのでしょうか。
具体的にはJテキストフィールドで入力されている文字
JAVA
この状態でバックスペースキーを押しても
JAVA
と表示されている状態です。
こんな風にBackspaceの入力を無効にしてみてください。
TextField tf = new TextField();
tf.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == e.VK_BACK_SPACE) {
e.consume();
}
}
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() == e.VK_BACK_SPACE) {
e.consume();
}
}
});
返信が送れてすみませんでした。
その例でやってみたのですがBackspace処理は無効化にはなりませんでした。
その問題はなんとか対応策はとってみたのですが次に
マウスクリック処理で同じ問題が出てきました。
具体的にはテキストフィールドでマウスクリックをしても
カーソルが移動しないようにしたいです。
こんな風にマウスの入力を無効にしてみてください。
TextField tf = new TextField();
tf.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
((TextField)e.getSource()).requestFocus();
e.consume();
}
public void mouseReleased(MouseEvent e) {
e.consume();
}
});
ありがとうございます
早速やってみます!