想知道是否可以通過打印來初始化文本字段(這部分我知道該怎麼做),但是打印後突出顯示,然後在用戶開始輸入時消失?即使沒有突出顯示,你怎麼能讓字段初始化爲「請輸入你的電話號碼」,然後讓它消失,以便用戶不必刪除文本?JTextField焦點問題
0
A
回答
5
還有一個辦法,用focusGained事件。 只是標記的初始文本:
String initialText = "Enter your story here...";
...
jTextArea1.setText(initialText);
...
private void focusGained(java.awt.event.FocusEvent evt) {
if (jTextArea1.getText().equals(initialText)) {
//jTextArea1.setSelectionStart(0);
//jTextArea1.setSelectionEnd(jTextArea1.getText().length());
jTextArea1.selectAll();
}
}
這樣當用戶鍵入的東西在jTextArea1的初始文本將立即取代。
5
- 與像一些已知的文字初始化
JTextFiled
例如「請輸入您的手機號碼」 - 實施FocusListener
- 在focusGained()檢查JTextField的情況下,看它是否有已知的文本,如果它清除文本;如果不是,則什麼也不做。
下面是一個代碼示例
final String INITIAL_TEXT = "Please enter your ph. number";
final JTextField textField = new JTextField(INITIAL_TEXT);
textField.addFocusListener(new FocusListener() {
@Override
public void focusGained(FocusEvent e) {
if (textField.getText().equals(INITIAL_TEXT)) {
textField.setText("");
}
}
@Override
public void focusLost(FocusEvent e) {
}
});
2
和focusLost
如果用戶沒有輸入任何內容,將初始文本放回原位是很好的可用性。像這樣:
public void focusLost(FocusEvent e)
{
// If the field is empty, set the default text when losing focus.
if (inputField.getText().isEmpty())
{
inputField.setText(INITIAL_TEXT);
}
}
或者,如果你不想使用focusLost
方法,你可以創建一個內部類MyFocusListener
擴展FocusAdapter
,這樣你只需要實現您要使用的方法。
private class MyFocusListener extends FocusAdapter
{
public void focusGained(FocusEvent e)
{
// do your magic!
}
// ignore the focusLost method
}
-1
public boolean isCorrect() {
data = new String[6];
for (int i = 0; i < informationLabel.length; i++) {
if (i == 0) {
if (!informationTextField[i].getText().equals("")) {
data[i] = informationTextField[i].getText();
}
else
return false;
}
if (i == 1 || i == 2) {
if (informationPasswordField[i - 1].getText().equals(""))
return false;
}
if (i == 3 || i == 4 || i == 5 || i == 6) {
if (!informationTextField[i - 2].getText().equals("")) {
data[i - 1] = informationTextField[i - 2].getText();
}
else
return false;
}
}
return true;
}
相關問題
- 1. Java JTextfield焦點
- 2. 如何取消焦點JTextField
- 3. 從JTextField失去焦點
- 4. EditText焦點問題
- 5. ListView焦點問題
- 6. AppBar焦點問題
- 7. AppCompatEditText焦點問題
- 8. WPF焦點問題
- 9. textarea焦點問題
- 10. ViewPager焦點問題
- 11. jquery焦點問題
- 12. EditText焦點問題
- 13. TabPanel焦點問題
- 14. javascript焦點問題
- 15. JTextField Numpad問題
- 16. WPF TabItem焦點問題
- 17. ListView上的焦點問題
- 18. Wpf DataGrid的焦點問題
- 19. WPF設置焦點問題
- 20. jQuery UI的焦點問題
- 21. 黑莓webworks焦點問題
- 22. WPF全屏焦點問題?
- 23. HTML和Flex焦點問題
- 24. 週期焦點問題 -
- 25. 輸入焦點jquery問題
- 26. Vaadin AceEditor焦點問題
- 27. 擺動焦點問題
- 28. Silverlight HeaderedContentControl.Header焦點問題
- 29. AS3中的焦點問題
- 30. IE設置焦點問題
哇靠。謝謝!對不起,但是@override是什麼? – unit 2011-02-13 20:46:42
這是一個註釋。這是它的文檔。 http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Override.html – 2011-02-13 20:48:44
嗯....我想寫一個程序來獲取文本字段中的名稱,實際上,當我在場上沒有名字而失去焦點時,我應該提示一個名字。現在,當我按照上面的建議進行操作時,我的組合框中失去了功能(但我的JList仍然正常工作,就像我的複選框一樣)。那是什麼?我有這個編碼爲我的焦點丟失: – unit 2011-02-13 21:00:05