JavaTM Platform
Standard Ed. 6

javax.swing.text
클래스 InternationalFormatter

java.lang.Object 
  상위를 확장 javax.swing.JFormattedTextField.AbstractFormatter 
      상위를 확장 javax.swing.text.DefaultFormatter 
          상위를 확장 javax.swing.text.InternationalFormatter
모든 구현된 인터페이스:
Serializable , Cloneable
직계의 기존의 서브 클래스:
DateFormatter , NumberFormatter


public class InternationalFormatter
extends DefaultFormatter

InternationalFormatter 는, String 에의 변환과 String 로부터의 변환을 처리하는 java.text.Format 의 인스턴스를 사용해,DefaultFormatter 를 확장합니다.

getAllowsInvalid() 가 false 의 경우, 각 편집의 현행 텍스트에 서식을 붙이도록(듯이) Format 에 요구합니다.

setMinimum 메소드와 setMaximum 메소드로 최소치와 최대치를 지정할 수 있습니다. 이것을 유효하게 하려면 ,stringToValue 로부터 반환된 값이,Comparable 인터페이스를 개입시켜 최대치/최소치와 비교 가능하지 않으면 안됩니다.

특정의 값이 입력 불가가 된다고 하는 상황을 만들어 내는 일이 있기 (위해)때문에,FormatInternationalFormatter 의 구성 방법에는 주의가 필요합니다. 항상 유효한 InternationalFormatter (setAllowsInvalid(false))인 일자 서식 「M/d/yy」가 덧쓰기 모드(replace mode) (setOverwriteMode(true))이며, 일자는 7/1/99 이다고 합니다. 이 경우, 사용자는 2 자리수의 달 및 일자를 입력할 수 없습니다. 이것을 회피하려면 , 서식을 「MM/dd/yy」로 할 필요가 있습니다.

InternationalFormatter 가, 유효한 값 (setAllowsInvalid(false))만을 허가하도록(듯이) 구성되어 있는 경우, 유효한 각 편집은,Format 로부터 완전하게 리셋 된 JFormattedTextField 의 텍스트가 됩니다. 또 커서 위치는, 리터럴 문자를 결과적으로 얻을 수 있는 String 에 대해서 추가 또는 삭제되도록(듯이) 조정됩니다.

stringToValueInternationalFormatter 의 동작은,DefaultTextFormatter 의 동작과는 조금 다릅니다. 이 경우는 이하를 실행합니다.

  1. parseObject 는,setFormat 로 지정된 Format 상에서 불려 간다
  2. Class 가 그 값으로 설정되면(자) (setValueClass), 슈퍼 클래스의 구현이 불려 가parseObject 로부터 반환된 값을 적절한 클래스로 변환한다
  3. ParseException 가 throw 되지 않고, 또 그 값이 최대치, 최소치의 범위외인 경우,ParseException 가 throw 된다
  4. 값이 반환된다
Format 가 돌려주는 대체 Class 를 지정하려면 ,InternationalFormatter 가 이 방법으로 stringToValue 를 구현합니다.

경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 1.4 이후, 모든 JavaBeans 의 장기간의 운용 지원는,java.beans 패키지에 추가되고 있습니다. 자세한 것은,XMLEncoder 를 참조해 주세요.

도입된 버젼:
1.4
관련 항목:
Format , Comparable

생성자 의 개요
InternationalFormatter ()
          Format 를 지정하지 않고 ,InternationalFormatter 를 작성합니다.
InternationalFormatter (Format  format)
          Format 의 인스턴스를 지정해,InternationalFormatter 를 작성합니다.
 
메소드의 개요
 Object clone ()
          DefaultFormatter 의 카피를 작성합니다.
protected  Action [] getActions ()
          getSupportsIncrement 가 true 를 돌려주는 경우, 값의 증감에 적절한 2개의 Action 를 돌려줍니다.
 Format.Field [] getFields (int offset)
          offset 위치의 텍스트에 관련하는 Format.Field 정수를 돌려줍니다.
 Format getFormat ()
          편집, 표시가 가능한 정당한 값을 규정하는 서식을 돌려줍니다.
 Comparable getMaximum ()
          가능한 최대치를 돌려줍니다.
 Comparable getMinimum ()
          가능한 최소치를 돌려줍니다.
 void install (JFormattedTextField  ftf)
          DefaultFormatter 를 특정의 JFormattedTextField 에 인스톨 합니다.
 void setFormat (Format  format)
          편집 및 표시가 가능한 정당한 값을 규정하는 서식을 설정합니다.
 void setMaximum (Comparable  max)
          가능한 최대치를 설정합니다.
 void setMinimum (Comparable  minimum)
          가능한 최소치를 설정합니다.
 Object stringToValue (String  text)
          String textObject 표현을 돌려줍니다.
 String valueToString (Object  value)
          Object 의 value 의 캐릭터 라인 표현을 돌려줍니다.
 
클래스 javax.swing.text. DefaultFormatter 로부터 상속된 메소드
getAllowsInvalid , getCommitsOnValidEdit , getDocumentFilter , getNavigationFilter , getOverwriteMode , getValueClass , setAllowsInvalid , setCommitsOnValidEdit , setOverwriteMode , setValueClass
 
클래스 javax.swing. JFormattedTextField.AbstractFormatter 로부터 상속된 메소드
getFormattedTextField , invalidEdit , setEditValid , uninstall
 
클래스 java.lang. Object 로부터 상속된 메소드
equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

InternationalFormatter

public InternationalFormatter()
Format 를 지정하지 않고 ,InternationalFormatter 를 작성합니다.


InternationalFormatter

public InternationalFormatter(Format  format)
Format 의 인스턴스를 지정해,InternationalFormatter 를 작성합니다.

파라미터:
format - String 와의 상호 변환에 사용되는 Format 인스턴스
메소드의 상세

setFormat

public void setFormat(Format  format)
편집 및 표시가 가능한 정당한 값을 규정하는 서식을 설정합니다.

파라미터:
format - String 와의 상호 변환에 사용되는 Format 의 인스턴스

getFormat

public Format  getFormat()
편집, 표시가 가능한 정당한 값을 규정하는 서식을 돌려줍니다.

반환값:
String 와의 상호 변환에 사용되는 Format 인스턴스

setMinimum

public void setMinimum(Comparable  minimum)
가능한 최소치를 설정합니다. valueClass 가 미지정으로 minimum 가 null 이외의 경우,valueClassminimum 클래스의 valueClass 로 설정됩니다.

파라미터:
minimum - 입력 가능한 최소 적정치
관련 항목:
DefaultFormatter.setValueClass(java.lang.Class)

getMinimum

public Comparable  getMinimum()
가능한 최소치를 돌려줍니다.

반환값:
입력 가능한 최소 적정치

setMaximum

public void setMaximum(Comparable  max)
가능한 최대치를 설정합니다. valueClass 가 미지정으로,max 가 null 이외의 경우,valueClassmax 클래스의 valueClass 로 설정됩니다.

파라미터:
max - 입력 가능한 최대 적정치
관련 항목:
DefaultFormatter.setValueClass(java.lang.Class)

getMaximum

public Comparable  getMaximum()
가능한 최대치를 돌려줍니다.

반환값:
입력 가능한 최대 적정치

install

public void install(JFormattedTextField  ftf)
DefaultFormatter 를 특정의 JFormattedTextField 에 인스톨 합니다. 이것에 의해 valueToString 가 불려 가, 현재의 값이 JFormattedTextField 로부터 String 에 변환됩니다. 다음에 getActions 로부터의 Action,getDocumentFilter 로부터 반환된 DocumentFilter,getNavigationFilter 로부터 반환된 NavigationFilter 가,JFormattedTextField 에 인스톨 됩니다.

일반적으로, 서브 클래스에서의 오버라이드(override)가 필요하게 되는 것은,JFormattedTextField 에 추가 청취자를 인스톨 하는 경우만입니다.

현재의 값을 캐릭터 라인으로 변환할 때 ParseException 가 발생했을 경우는, 텍스트로서 빈 상태(empty)의 캐릭터 라인이 설정되어JFormattedTextField 에 부정한 상태를 나타내는 값이 설정됩니다.

이것은 public 메소드입니다만, 일반적으로은 JFormattedTextField 의 서브 클래스에 대해서만 유효합니다. 값이 변경되는지, 내부 상태가 변경되는 경우,JFormattedTextField 에 의해 이 메소드가 불려 갑니다.

오버라이드(override):
클래스 DefaultFormatter 내의 install
파라미터:
ftf - 포맷 대상의 JformattedTextField. null 의 경우는, 현재의 JFormattedTextField 로부터의 언인스톨을 나타낸다

valueToString

public String  valueToString(Object  value)
                     throws ParseException 
Object 의 value 의 캐릭터 라인 표현을 돌려줍니다. 이것에 의해, 현재의 Format 상에서 format 가 불려 갑니다.

오버라이드(override):
클래스 DefaultFormatter 내의 valueToString
파라미터:
value - 변환 대상의 값
반환값:
치의 캐릭터 라인 표현
예외:
ParseException - 변환으로 에러가 발생했을 경우

stringToValue

public Object  stringToValue(String  text)
                     throws ParseException 
String textObject 표현을 돌려줍니다.

오버라이드(override):
클래스 DefaultFormatter 내의 stringToValue
파라미터:
text - 변환하는 String
반환값:
텍스트의 Object 표현
예외:
ParseException - 변환으로 에러가 발생했을 경우

getFields

public Format.Field [] getFields(int offset)
offset 위치의 텍스트에 관련하는 Format.Field 정수를 돌려줍니다. offset 의 위치가 현재의 텍스트내에서 부정한 경우는, 빈 상태(empty)의 배열이 돌려주어집니다.

파라미터:
offset - 검사하는 텍스트에의 오프셋(offset)
반환값:
지정된 위치의 텍스트에 관련한 Format.Field 정수

clone

public Object  clone()
             throws CloneNotSupportedException 
DefaultFormatter 의 카피를 작성합니다.

오버라이드(override):
클래스 DefaultFormatter 내의 clone
반환값:
DefaultFormatter 의 카피
예외:
CloneNotSupportedException - 객체의 클래스가 Cloneable 인터페이스를 지원하고 있지 않는 경우. clone 메소드를 오버라이드(override) 한 서브 클래스도, 인스턴스를 복제할 수 없는 것을 나타내기 위해서(때문에) 이 예외를 throw 하는 일이 있는
관련 항목:
Cloneable

getActions

protected Action [] getActions()
getSupportsIncrement 이 true 를 돌려주는 경우, 값의 증감에 적절한 2개의 Action 를 돌려줍니다.

오버라이드(override):
클래스 JFormattedTextField.AbstractFormatter 내의 getActions
반환값:
JformattedTextField 에 인스톨 하는 액션의 배열

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.