JTextField内の文字の位置を返すメソッドはありますか?つまり、いくつかの値を含むJTextFieldがある場合です。たとえば、フィールドには値ABCDEFJが含まれています。ユーザーは、新しい値を入力するために、文字「C」の直後にカーソルを置くことにしました。彼が新しいキャラクターを入力する位置を取得する方法はありますか?この例では、3が返されます。
質問する
11155 次
3 に答える
15
JTextField.getCaretPosition()
JTextField.setCaretPosition(int pos)
于 2012-06-13T16:04:00.657 に答える
2
CaretListener
インターフェイスを利用してみてください。
public class A extends JFrame implements CaretListener
{
//Assume you have a text field.
public A()
{
JTextField field = new JTextField("bla bla");
field.addCaretListener(this);
.....
}
public void caretUpdate(CaretEvent e)
{
int index = e.getDot();
.....
}
}
getDot()
クラスのメソッドはCaretEvent
、必要な結果を返します。後で使用するために、それをグローバル変数に割り当てることができます。
于 2012-06-13T16:06:58.827 に答える
1
これがあなたの答えです:
http://docs.oracle.com/javase/6/docs/api/javax/swing/text/JTextComponent.html#getCaretPosition%28%29
ActionListenerを使用して、アクションを待ちます。ユーザーが何かを入力したら、キャレットの位置を見つけます。
于 2012-06-13T16:03:08.413 に答える