javax.swing
public class SpinnerDateModel extends AbstractSpinnerModel implements Serializable
Since: 1.4
Constructor Summary | |
---|---|
SpinnerDateModel()
Constructs a SpinnerDateModel using the current date,
no start or end limit, and {@link Calendar#DAY_OF_MONTH} as the calendar
field. | |
SpinnerDateModel(Date value, Comparable start, Comparable end, int calendarField)
Constructs a SpinnerDateModel with the specified value, lower
and upper bounds, and which spins the specified calendar field.
|
Method Summary | |
---|---|
int | getCalendarField()
Returns the {@link Calendar} field used to calculate the previous and
next dates in the sequence.
|
Date | getDate()
Returns the current date/time.
|
Comparable | getEnd()
Returns the upper limit on the date/time value, or null if
there is no maximum date/time.
|
Object | getNextValue()
Returns the next date in the sequence, or null if the
next date is past the upper limit (if one is specified). |
Object | getPreviousValue()
Returns the previous date in the sequence, or null if the
previous date is prior to the lower limit (if one is specified). |
Comparable | getStart()
Returns the lower limit on the date/time value, or null if
there is no minimum date/time.
|
Object | getValue()
Returns the current date in the sequence (this method returns the same as
{@link #getDate()}).
|
void | setCalendarField(int calendarField)
Sets the date field to change when calculating the next and previous
values. |
void | setEnd(Comparable end)
Sets the upper limit for the date/time value and, if the new limit is
different to the old limit, sends a {@link ChangeEvent} to all registered
listeners. |
void | setStart(Comparable start)
Sets the lower limit for the date/time value and, if the new limit is
different to the old limit, sends a {@link ChangeEvent} to all registered
listeners. |
void | setValue(Object value)
Sets the current date and, if the new value is different to the old
value, sends a {@link ChangeEvent} to all registered listeners.
|
SpinnerDateModel
using the current date,
no start or end limit, and {@link Calendar#DAY_OF_MONTH} as the calendar
field.SpinnerDateModel
with the specified value, lower
and upper bounds, and which spins the specified calendar field.
The start
and end
limits must have a
compareTo
method that supports instances of {@link Date}, but
do not themselves need to be instances of {@link Date} (although typically
they are).
Parameters: value the initial value/date (null
not permitted). start a constraint that specifies the earliest permitted date
value, or null
for no lower limit. end a constraint that specifies the latest permitted date value,
or null
for no upper limit. calendarField the Calendar
field to spin,
(Calendar.ZONE_OFFSET and Calendar.DST_OFFSET are invalid)
Returns: The date field code.
Returns: The current date/time (never null
).
See Also: getValue
null
if
there is no maximum date/time.
Returns: The upper limit.
See Also: setEnd
null
if the
next date is past the upper limit (if one is specified). The current date
is not changed.
Returns: The next date, or null
if the current value is
the latest date represented by the model.
See Also: getEnd
null
if the
previous date is prior to the lower limit (if one is specified). The
current date is not changed.
Returns: The previous date, or null
if the current value is
the earliest date represented by the model.
See Also: getStart
null
if
there is no minimum date/time.
Returns: The lower limit.
See Also: setStart
Returns: The current date (never null
).
Parameters: calendarField the calendar field to set.
Throws: IllegalArgumentException if calendarField
is not
a valid code.
null
value is interpreted as "no upper limit".
No check is made to ensure that the current date/time is on or before the
new upper limit - the caller is responsible for ensuring that this
relationship holds. In addition, the caller should ensure that
end
is {@link Serializable}.
Parameters: end the new upper limit for the date/time value (null
permitted).
null
value is interpreted as "no lower limit".
No check is made to ensure that the current date/time is on or after the
new lower limit - the caller is responsible for ensuring that this
relationship holds. In addition, the caller should ensure that
start
is {@link Serializable}.
Parameters: start the new lower limit for the date/time value
(null
permitted).
Parameters: value the new date (null
not permitted, must be an
instance of Date
).
Throws: IllegalArgumentException if value
is not an instance
of Date
.