Class DateSpinner

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class DateSpinner
    extends javax.swing.JSpinner
    DateSpinner is a spinner that is specialized in displaying or editing a a date or time.

    To change the value, you can use JSpinner.setValue(Object) and pass in a Date. To get the Date, using JSpinner.getValue().

    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JSpinner

        javax.swing.JSpinner.AccessibleJSpinner, javax.swing.JSpinner.DateEditor, javax.swing.JSpinner.DefaultEditor, javax.swing.JSpinner.ListEditor, javax.swing.JSpinner.NumberEditor
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.text.DateFormat _format  
      javax.swing.text.DefaultFormatter _formatter  
      javax.swing.JSpinner.DateEditor _timeEditor  
      • Fields inherited from class javax.swing.JComponent

        listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • Fields inherited from class java.awt.Component

        accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Constructor Summary

      Constructors 
      Constructor Description
      DateSpinner()
      Creates a date spinner using locale default as the format string.
      DateSpinner​(java.lang.String format)
      Creates a date spinner using the specified format string.
      DateSpinner​(java.lang.String format, java.util.Date date)
      Creates a date spinner using the specified format string and an initial value.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected javax.swing.JSpinner.DateEditor createDateEditor​(java.lang.String format)
      Creates the DateEditor.
      protected void customizeSpinner()
      Customizes the spinner.
      boolean getAllowsInvalid()
      Returns whether or not the value being edited is allowed to be invalid for a length of time.
      boolean getCommitsOnValidEdit()
      Returns when edits are published back to the JFormattedTextField.
      boolean getOverwriteMode()
      Returns the behavior when inserting characters.
      java.util.TimeZone getTimeZone()
      Gets the time zone.
      boolean isLenient()
      Tell whether date/time parsing is to be lenient.
      void setAllowsInvalid​(boolean allowsInvalid)
      Sets whether or not the value being edited is allowed to be invalid for a length of time (that is, stringToValue throws a ParseException).
      void setCommitsOnValidEdit​(boolean commit)
      Sets when edits are published back to the JFormattedTextField.
      void setFormat​(java.lang.String format)
      Sets the date format string used by this DateSpinner.
      void setLenient​(boolean lenient)
      Specify whether or not date/time parsing is to be lenient.
      void setOverwriteMode​(boolean overwriteMode)
      Configures the behavior when inserting characters.
      void setTimeZone​(java.util.TimeZone zone)
      Sets the time zone for the calendar of this DateFormat object.
      • Methods inherited from class javax.swing.JSpinner

        addChangeListener, commitEdit, createEditor, fireStateChanged, getAccessibleContext, getChangeListeners, getEditor, getModel, getNextValue, getPreviousValue, getUI, getUIClassID, getValue, removeChangeListener, setEditor, setModel, setUI, setValue, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • _formatter

        public javax.swing.text.DefaultFormatter _formatter
      • _timeEditor

        public javax.swing.JSpinner.DateEditor _timeEditor
      • _format

        public java.text.DateFormat _format
    • Constructor Detail

      • DateSpinner

        public DateSpinner()
        Creates a date spinner using locale default as the format string.
      • DateSpinner

        public DateSpinner​(java.lang.String format)
        Creates a date spinner using the specified format string.
        Parameters:
        format - the format string as defined in SimpleDateFormat.
      • DateSpinner

        public DateSpinner​(java.lang.String format,
                           java.util.Date date)
        Creates a date spinner using the specified format string and an initial value.
        Parameters:
        format - the format string as defined in SimpleDateFormat.
        date - initial value
    • Method Detail

      • setFormat

        public void setFormat​(java.lang.String format)
        Sets the date format string used by this DateSpinner. Please note, this method call will recreate the DateEditor used by DateSpinner.
        Parameters:
        format - the format
      • customizeSpinner

        protected void customizeSpinner()
        Customizes the spinner.
      • createDateEditor

        protected javax.swing.JSpinner.DateEditor createDateEditor​(java.lang.String format)
        Creates the DateEditor.
        Parameters:
        format - the format
        Returns:
        the DateEditor.
      • setCommitsOnValidEdit

        public void setCommitsOnValidEdit​(boolean commit)
        Sets when edits are published back to the JFormattedTextField. If true, commitEdit is invoked after every valid edit (any time the text is edited). On the other hand, if this is false than the DefaultFormatter does not publish edits back to the JFormattedTextField. As such, the only time the value of the JFormattedTextField will change is when commitEdit is invoked on JFormattedTextField, typically when enter is pressed or focus leaves the JFormattedTextField.
        Parameters:
        commit - Used to indicate when edits are committed back to the JTextComponent
      • getCommitsOnValidEdit

        public boolean getCommitsOnValidEdit()
        Returns when edits are published back to the JFormattedTextField.
        Returns:
        true if edits are committed aftereveryy valid edit
      • setOverwriteMode

        public void setOverwriteMode​(boolean overwriteMode)
        Configures the behavior when inserting characters. If overwriteMode is true (the default), new characters overwrite existing characters in the model.
        Parameters:
        overwriteMode - Indicates if overwrite or overstrike mode is used
      • getOverwriteMode

        public boolean getOverwriteMode()
        Returns the behavior when inserting characters.
        Returns:
        true if newly inserted characters overwrite existing characters
      • setAllowsInvalid

        public void setAllowsInvalid​(boolean allowsInvalid)
        Sets whether or not the value being edited is allowed to be invalid for a length of time (that is, stringToValue throws a ParseException). It is often convenient to allow the user to temporarily input an invalid value.
        Parameters:
        allowsInvalid - Used to indicate if the edited value must always be valid
      • getAllowsInvalid

        public boolean getAllowsInvalid()
        Returns whether or not the value being edited is allowed to be invalid for a length of time.
        Returns:
        false if the edited value must always be valid
      • setTimeZone

        public void setTimeZone​(java.util.TimeZone zone)
        Sets the time zone for the calendar of this DateFormat object.
        Parameters:
        zone - the given new time zone.
      • getTimeZone

        public java.util.TimeZone getTimeZone()
        Gets the time zone.
        Returns:
        the time zone associated with the calendar of DateFormat.
      • setLenient

        public void setLenient​(boolean lenient)
        Specify whether or not date/time parsing is to be lenient. With lenient parsing, the parser may use heuristics to interpret inputs that do not precisely match this object's format. With strict parsing, inputs must match this object's format.
        Parameters:
        lenient - when true, parsing is lenient
        See Also:
        Calendar.setLenient(boolean)
      • isLenient

        public boolean isLenient()
        Tell whether date/time parsing is to be lenient. It is the same as DateFormat.isLenient().
        Returns:
        true or false.