|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.swing.JFormattedTextField.AbstractFormatter javax.swing.text.DefaultFormatter
public class DefaultFormatter
DefaultFormatter
格式化任意物件。格式化是通過調用 toString
方法完成的。為將值轉換回 String,類別必須提供一個採用 String 參數的建構子。如果未發現採用 String 的單一參數建構子,則返回值將為傳入 stringToValue
的 String。
DefaultFormatter
的實例不能在 JFormattedTextField
的多個實例中使用。要獲得已配置好的 DefaultFormatter
的副本,請使用 clone
方法。
警告:此類別的已序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲或運行相同 Swing 版本的應用程序之間的 RMI。從 1.4 版本開始,已在 java.beans
套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder
。
JFormattedTextField.AbstractFormatter
建構子摘要 | |
---|---|
DefaultFormatter()
創建 DefaultFormatter。 |
方法摘要 | |
---|---|
Object |
clone()
創建此 DefaultFormatter 的副本。 |
boolean |
getAllowsInvalid()
返回編輯的值是否在一段時間內允許為無效。 |
boolean |
getCommitsOnValidEdit()
返回何時將編輯內容發佈回 JFormattedTextField 。 |
protected DocumentFilter |
getDocumentFilter()
返回用於限制放置到 JFormattedTextField 中的字元的 DocumentFilter 。 |
protected NavigationFilter |
getNavigationFilter()
返回用於限制鼠標放置位置的 NavigationFilter 。 |
boolean |
getOverwriteMode()
返回插入字元時的行為。 |
Class<?> |
getValueClass()
返回用於創建新 Objects 的類別。 |
void |
install(JFormattedTextField ftf)
將 DefaultFormatter 安裝到特定的 JFormattedTextField 。 |
void |
setAllowsInvalid(boolean allowsInvalid)
設置編輯的值在一段時間內是否允許為無效(也就是說, stringToValue 是否拋出 ParseException )。 |
void |
setCommitsOnValidEdit(boolean commit)
設置何時將編輯內容發佈回 JFormattedTextField 。 |
void |
setOverwriteMode(boolean overwriteMode)
配置插入字元時的行為。 |
void |
setValueClass(Class<?> valueClass)
設置用於創建新 Objects 的類別。 |
Object |
stringToValue(String string)
通過使用帶 String 參數的建構子將傳入的 String 轉換為 getValueClass 的一個實例。 |
String |
valueToString(Object value)
使用 toString 方法將傳入的 Object 轉換為 String。 |
從類別 javax.swing.JFormattedTextField.AbstractFormatter 繼承的方法 |
---|
getActions, getFormattedTextField, invalidEdit, setEditValid, uninstall |
從類別 java.lang.Object 繼承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public DefaultFormatter()
方法詳細資訊 |
---|
public void install(JFormattedTextField ftf)
DefaultFormatter
安裝到特定的 JFormattedTextField
。這會調用 valueToString
,以便將 JFormattedTextField
的當前值轉換為 String。此方法稍後將會把 getActions
返回的 Action
、getDocumentFilter
返回的 DocumentFilter
和 getNavigationFilter
返回的 NavigationFilter
安裝到 JFormattedTextField
上。
如果子類別希望在 JFormattedTextField
上安裝其他偵聽器,則通常只需要覆寫此方法。
如果在將當前值轉換為 String 時存在 ParseException
,則這會將文本設置為空 String,並將 JFormattedTextField
標記為正處在無效狀態。
儘管這是一個公共方法,但通常僅供 JFormattedTextField
的子類別使用。當值發生更改,或內部狀態發生更改時,JFormattedTextField
將在適當的時候調用此方法。
JFormattedTextField.AbstractFormatter
中的 install
ftf
- 要格式化為的 JFormattedTextField,可以為 null,指示未從當前的 JFormattedTextField 安裝。public void setCommitsOnValidEdit(boolean commit)
JFormattedTextField
。如果為 true,commitEdit
在每次有效編輯(編輯文本的任何時間)後調用。另一方面,如果為 false,則 DefaultFormatter
不會將編輯內容發佈回 JFormattedTextField
。因此,JFormattedTextField
值的惟一一次改變發生的時間是,在 JFormattedTextField
上調用 commitEdit
時,通常為按下回車(Enter)或當焦點離開 JFormattedTextField
時。
commit
- 用於指示何時將編輯內容提交回 JTextComponentpublic boolean getCommitsOnValidEdit()
JFormattedTextField
。
public void setOverwriteMode(boolean overwriteMode)
overwriteMode
為 true (預設值),新字元將改寫模型中現有的字元。
overwriteMode
- 指示使用改寫或替代網要public boolean getOverwriteMode()
public void setAllowsInvalid(boolean allowsInvalid)
stringToValue
是否拋出 ParseException
)。允許使用者臨時輸入一個無效值會很方便。
allowsInvalid
- 用於指示編輯的值是否必須始終為有效public boolean getAllowsInvalid()
public void setValueClass(Class<?> valueClass)
valueClass
- 用於建構從 stringToValue 中返回的值的類別public Class<?> getValueClass()
public Object stringToValue(String string) throws ParseException
getValueClass
的一個實例。如果 getValueClass
返回 null,將使用 JFormattedTextField
中當前值的類別。如果它為 null,將返回一個 String。如果建構子拋出異常,則會拋出 ParseException
。如果沒有只帶一個參數的 String 建構子,則返回 string
。
JFormattedTextField.AbstractFormatter
中的 stringToValue
string
- 要轉換的字元串
ParseException
- 如果轉換過程中出現錯誤public String valueToString(Object value) throws ParseException
toString
方法將傳入的 Object 轉換為 String。
JFormattedTextField.AbstractFormatter
中的 valueToString
value
- 要轉換的值
ParseException
- 如果在轉換時發生錯誤protected DocumentFilter getDocumentFilter()
JFormattedTextField
中的字元的 DocumentFilter
。
JFormattedTextField.AbstractFormatter
中的 getDocumentFilter
protected NavigationFilter getNavigationFilter()
NavigationFilter
。
JFormattedTextField.AbstractFormatter
中的 getNavigationFilter
public Object clone() throws CloneNotSupportedException
JFormattedTextField.AbstractFormatter
中的 clone
CloneNotSupportedException
- 如果物件的類別不支持 Cloneable
介面,則覆寫 clone
方法的子類別也會拋出此異常,以指示無法複製某個實例。Cloneable
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。