内部にメッセージをデフォルトとして持つ JTextField を作成したいと考えています。ただし、適切なテキストとしてではなく、JTextField 内に入力する内容についてのコメントとして。したがって、jtf.getText() と入力すると、null または空が返されます。これは、そこに出力された単なるコメントであるためです。クリックすると消えて、好きなように書くことができます。そのようなことを行う方法はありますか?
61040 次
3 に答える
10
考えられる手法は、最初にデフォルトの文字列を textField のテキストとして設定することです。
JTextField myField = new JTextField("Default Text");
次に、 を使用してFocusListener
、ユーザーが要素にフォーカスを置いたときにテキストが消えるようにします。
myField.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
myField.setText("");
}
public void focusLost(FocusEvent e) {
// nothing
}
});
ただし、注意が必要です。ユーザーがテキスト フィールドにフォーカスを移さなかった場合、getText() はデフォルトの文字列を返します。したがって、テキスト フィールドにフォーカスがあったことがあるかどうかを示すブール値を管理することをお勧めします。
于 2013-02-16T23:42:30.380 に答える
5
于 2013-02-16T23:38:12.543 に答える
2
textFieldInstance.setToolTipは役立ちますか:
textFieldInstance.setToolTip("Tool tip for text field");
于 2013-02-16T23:25:45.657 に答える