JavaTM Platform
Standard Ed. 6

javax.swing
클래스 SpinnerDateModel

java.lang.Object 
  상위를 확장 javax.swing.AbstractSpinnerModel 
      상위를 확장 javax.swing.SpinnerDateModel
모든 구현된 인터페이스:
Serializable , SpinnerModel


public class SpinnerDateModel
extends AbstractSpinnerModel
implements Serializable

Date 의 순서의 SpinnerModel 입니다. 순서의 상한과 하한은,startend 라고 하는 프로퍼티에 의해 정의합니다. nextValue 메소드와 previousValue 메소드에 의해 계산되는 증가분 또는 감소분은,calendarField 라고 하는 프로퍼티에 의해 정의합니다. 순서에 상한 또는 하한이 없는 것을 나타내기 위해서(때문에),start 프로퍼티 또는 end 프로퍼티을 null 로 할 수 있습니다.

calendarField 프로퍼티의 값은,Calendar 의 필드를 나타내는 java.util.Calendar 정수의 언젠가일 필요가 있습니다. getNextValue 메소드와 getPreviousValue 메소드는, 이 정수에 근거해 일자를 전후로 변경합니다. 예를 들어,calendarFieldCalendar.DAY_OF_WEEK 의 경우,nextValue 는 현재의 value 의 24 시간 후의 Date 를 생성해,previousValue 는 24 시간전의 Date 를 생성합니다.

calendarField 의 정당한 값은 다음과 같습니다.

다만, 일부의 UI 에서는 calendarField 를 설정하고 나서, 편집을 확정해 커서아래에 있는 필드를 스핀 할 수 있습니다. 1 필드만을 스핀 하는 경우는, setCalendarField 의 호출을 서브 클래스화해 무시할 수 있습니다.

이 모델은 ChangeListener 를 상속합니다. 모델의 value,calendarField,start,end 의 각 프로퍼티이 변경되었을 때에는,ChangeListeners 으로 변경이 통지됩니다.

도입된 버젼:
1.4
관련 항목:
JSpinner , SpinnerModel , AbstractSpinnerModel , SpinnerListModel , SpinnerNumberModel , Calendar.add(int, int)

필드의 개요
 
클래스 javax.swing. AbstractSpinnerModel 로부터 상속된 필드
listenerList
 
생성자 의 개요
SpinnerDateModel ()
          초기의 value 가 현재의 값으로,calendarFieldCalendar.DAY_OF_MONTH 에 동일하고,startend 에 한도가 없는 SpinnerDateModel 를 구축합니다.
SpinnerDateModel (Date  value, Comparable  start, Comparable  end, int calendarField)
          start 로부터 end 까지의 일자의 순서를 나타내는 SpinnerDateModel 를 작성합니다.
 
메소드의 개요
 int getCalendarField ()
          nextValue 메소드 또는 previousValue 메소드에 의해 가산 또는 감산된 Calendar 필드를 돌려줍니다.
 Date getDate ()
          이 순서의 Date 가운데, 현재의 요소를 돌려줍니다.
 Comparable getEnd ()
          순서의 말미의 Date 를 돌려줍니다.
 Object getNextValue ()
          순서의 다음의 Date 를 돌려줍니다.
 Object getPreviousValue ()
          순서의 전의 Date 를 돌려줍니다.
 Comparable getStart ()
          순서의 선두의 Date 를 돌려줍니다.
 Object getValue ()
          이 순서의 Date 가운데, 현재의 요소를 돌려줍니다.
 void setCalendarField (int calendarField)
          nextValue 메소드와 previousValue 메소드에 의해 계산되는 일자치 변경의 사이즈를 변경합니다.
 void setEnd (Comparable  end)
          이 순서의 Date 의 상한을 변경합니다.
 void setStart (Comparable  start)
          이 순서의 Date 의 하한을 변경합니다.
 void setValue (Object  value)
          이 순서의 현재의 Date 를 설정합니다.
 
클래스 javax.swing. AbstractSpinnerModel 로부터 상속된 메소드
addChangeListener , fireStateChanged , getChangeListeners , getListeners , removeChangeListener
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

SpinnerDateModel

public SpinnerDateModel(Date  value,
                        Comparable  start,
                        Comparable  end,
                        int calendarField)
start 로부터 end 까지의 일자의 순서를 나타내는 SpinnerDateModel 를 작성합니다. nextValue 메소드와 previousValue 메소드는, 현재의 일자인 valuecalendarField 의 타임 유니트 배당진 또는 후퇴 시켜, 순서의 요소를 계산합니다. Calendar field 의 증가 또는 감소에 대한 자세한 것은,java.util.Calendaradd 메소드를 참조해 주세요.

순서의 범위에 상한 또는 하한이 없는 것을 나타내기 위해서(때문에),start 파라미터와 end 파라미터를 null 로 할 수 있습니다. value 또는 calendarFieldnull 의 경우, 혹은 startend 의 양쪽 모두가 지정되고 있어mininum > maximum 의 경우,IllegalArgumentException 가 throw 됩니다. 같이(minimum <= value <= maximum) 가 false 의 경우도, IllegalArgumentException 가 throw 됩니다.

파라미터:
value - 모델의 현재의 값 (null 이외)
start - 순서의 선두의 일자 또는 null
end - 순서의 마지막 일자 또는 null
calendarField - 다음의 언젠가
  • Calendar.ERA
  • Calendar.YEAR
  • Calendar.MONTH
  • Calendar.WEEK_OF_YEAR
  • Calendar.WEEK_OF_MONTH
  • Calendar.DAY_OF_MONTH
  • Calendar.DAY_OF_YEAR
  • Calendar.DAY_OF_WEEK
  • Calendar.DAY_OF_WEEK_IN_MONTH
  • Calendar.AM_PM
  • Calendar.HOUR
  • Calendar.HOUR_OF_DAY
  • Calendar.MINUTE
  • Calendar.SECOND
  • Calendar.MILLISECOND
예외:
IllegalArgumentException - value 또는 calendarFieldnull 의 경우, calendarField 가 유효하지 않은 경우, 또는 (start <= value <= end) 이 false 인 경우
관련 항목:
Calendar.add(int, int) , setValue(java.lang.Object) , setStart(java.lang.Comparable) , setEnd(java.lang.Comparable) , setCalendarField(int)

SpinnerDateModel

public SpinnerDateModel()
초기의 value 가 현재의 값으로,calendarFieldCalendar.DAY_OF_MONTH 에 동일하고,startend 에 한도가 없는 SpinnerDateModel 를 구축합니다.

메소드의 상세

setStart

public void setStart(Comparable  start)
이 순서의 Date 의 하한을 변경합니다. startnull 의 경우, 하한은 없습니다. 여기에서는, 경계의 체크는 행해지지 않습니다. 즉, 새로운 start 의 값이, 생성자 에 의해 적용되는 불변식 (start <= value <= end) 을 무효로 하는 일이 있습니다. 이것은, 모델의 갱신을 단순하게 하기 (위해)때문에입니다. 당연,nextValue,previousValue,setValue 의 각 메소드를 호출하기 전에, 불변식이 true 가 되도록(듯이) 할 필요가 있습니다.

일반적으로, 이 프로퍼티은 Date 입니다만,Comparable 로 Date 에 대한 compareTo 메소드를 사용할 수 있습니다. 예를 들어, 다음과 같이 start 를 클래스의 인스턴스로 할 수 있습니다.

 MyStartDate implements Comparable { 
     long t = 12345;
     public int compareTo(Date d) {
            return (t < d.getTime() ? -1 :(t == d.getTime() ?  0 : 1));
     }
     public int compareTo(Object o) {
            return compareTo((Date) o);
     }
 }
 
상기의 예에서는,compareTo(Object) 에게 건네진 ObjectDate 가 아닌 경우,ClassCastException 가 throw 됩니다.

start 가 변경되면(자), 이 메소드는 ChangeEvent 를 트리거합니다.

파라미터:
start - 순서의 선두의 일자를 정의하는
관련 항목:
getStart() , setEnd(java.lang.Comparable) , AbstractSpinnerModel.addChangeListener(javax.swing.event.ChangeListener)

getStart

public Comparable  getStart()
순서의 선두의 Date 를 돌려줍니다.

반환값:
start 프로퍼티의 값
관련 항목:
setStart(java.lang.Comparable)

setEnd

public void setEnd(Comparable  end)
이 순서의 Date 의 상한을 변경합니다. startnull 의 경우, 상한은 없습니다. 여기에서는, 경계의 체크는 행해지지 않습니다. 즉, 새로운 start 의 값이, 생성자 에 의해 적용되는 불변식 (start <= value <= end) 을 무효로 하는 일이 있습니다. 이것은, 모델의 갱신을 단순하게 하기 (위해)때문에입니다. 당연,nextValue,previousValue,setValue 의 각 메소드를 호출하기 전에, 불변식이 true 가 되도록(듯이) 할 필요가 있습니다.

일반적으로의 경우, 이 프로퍼티은 Date 입니다만,ComparableDate 에 대한 compareTo 메소드를 사용할 수 있습니다. 예에 대해서는,setStart 를 참조해 주세요.

end 가 변경되면(자), 이 메소드는 ChangeEvent 를 트리거합니다.

파라미터:
end - 순서의 마지막 일자를 정의하는
관련 항목:
getEnd() , setStart(java.lang.Comparable) , AbstractSpinnerModel.addChangeListener(javax.swing.event.ChangeListener)

getEnd

public Comparable  getEnd()
순서의 말미의 Date 를 돌려줍니다.

반환값:
end 프로퍼티의 값
관련 항목:
setEnd(java.lang.Comparable)

setCalendarField

public void setCalendarField(int calendarField)
nextValue 메소드와 previousValue 메소드에 의해 계산되는 일자치 변경의 사이즈를 변경합니다. calendarField 파라미터는,Calendar.MONTHCalendar.MINUTE 등,Calendar 필드의 정수의 언젠가일 필요가 있습니다. nextValue 메소드와 previousValue 메소드는, 지정된 Calendar 필드를,Calendar.add 에 의해 1 유니트씩 전후로 이동할 뿐입니다. 일부의 UI 에서는 calendarField 를 설정하고 나서, 편집을 확정해 커서아래에 있는 필드를 스핀 할 수 있기 (위해)때문에, 이 메소드를 사용할 때는 주의가 필요합니다. 1 필드만을 스핀 하는 경우는, setCalendarField 의 호출을 서브 클래스화해 무시할 수 있습니다.

파라미터:
calendarField - 다음의 언젠가
  • Calendar.ERA
  • Calendar.YEAR
  • Calendar.MONTH
  • Calendar.WEEK_OF_YEAR
  • Calendar.WEEK_OF_MONTH
  • Calendar.DAY_OF_MONTH
  • Calendar.DAY_OF_YEAR
  • Calendar.DAY_OF_WEEK
  • Calendar.DAY_OF_WEEK_IN_MONTH
  • Calendar.AM_PM
  • Calendar.HOUR
  • Calendar.HOUR_OF_DAY
  • Calendar.MINUTE
  • Calendar.SECOND
  • Calendar.MILLISECOND

calendarField 가 변경되면(자), 이 메소드는 ChangeEvent 를 트리거합니다.

관련 항목:
getCalendarField() , getNextValue() , getPreviousValue() , Calendar.add(int, int) , AbstractSpinnerModel.addChangeListener(javax.swing.event.ChangeListener)

getCalendarField

public int getCalendarField()
nextValue 메소드 또는 previousValue 메소드에 의해 가산 또는 감산된 Calendar 필드를 돌려줍니다.

반환값:
calendarField 프로퍼티의 값
관련 항목:
setCalendarField(int)

getNextValue

public Object  getNextValue()
순서의 다음의 Date 를 돌려줍니다. 다음날 부가 end 보다 나머지의 경우는 null 를 돌려줍니다.

정의:
인터페이스 SpinnerModel 내의 getNextValue
반환값:
순서의 다음의 Date. 다음날 부가 end 보다 그리고의 경우는 null
관련 항목:
SpinnerModel.getNextValue() , getPreviousValue() , setCalendarField(int)

getPreviousValue

public Object  getPreviousValue()
순서의 전의 Date 를 돌려줍니다. 전날부가 start 보다 전의 경우는 null 를 돌려줍니다.

정의:
인터페이스 SpinnerModel 내의 getPreviousValue
반환값:
순서의 전의 Date. 전날부가 start 보다 전의 경우는 null
관련 항목:
SpinnerModel.getPreviousValue() , getNextValue() , setCalendarField(int)

getDate

public Date  getDate()
이 순서의 Date 가운데, 현재의 요소를 돌려줍니다. 이 메소드는,(Date) getValue 에 상당합니다.

반환값:
value 프로퍼티
관련 항목:
setValue(java.lang.Object)

getValue

public Object  getValue()
이 순서의 Date 가운데, 현재의 요소를 돌려줍니다.

정의:
인터페이스 SpinnerModel 내의 getValue
반환값:
value 프로퍼티
관련 항목:
setValue(java.lang.Object) , getDate()

setValue

public void setValue(Object  value)
이 순서의 현재의 Date 를 설정합니다. valuenull 의 경우,IllegalArgumentException 가 throw 됩니다. 여기에서는, 경계의 체크는 행해지지 않습니다. 즉, 새로운 값이, 생성자 에 의해 적용되는 불변식 (start <= value <= end) 을 무효로 하는 일이 있습니다. 당연,nextValue,previousValue,setValue 의 각 메소드를 호출하기 전에, 불변식 (start <= value <= maximum) 이 true 가 되도록(듯이) 할 필요가 있습니다.

value 가 변경되면(자), 이 메소드는 ChangeEvent 를 트리거합니다.

정의:
인터페이스 SpinnerModel 내의 setValue
파라미터:
value - 이 순서의 현재의 Date (null 이외)
예외:
IllegalArgumentException - value 가 null 의 경우, 또는 Date 가 아닌 경우
관련 항목:
getDate() , getValue() , AbstractSpinnerModel.addChangeListener(javax.swing.event.ChangeListener)

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 도 참조해 주세요.