public class JTextFieldDateEditor extends JFormattedTextField implements IDateEditor, CaretListener, FocusListener, ActionListener
JFormattedTextField.AbstractFormatter, JFormattedTextField.AbstractFormatterFactoryJTextField.AccessibleJTextFieldJTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBindingJComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
private Calendar |
calendar |
protected Color |
darkGreen |
protected Date |
date |
protected SimpleDateFormat |
dateFormatter |
protected String |
datePattern |
protected DateUtil |
dateUtil |
private int |
hours |
private boolean |
ignoreDatePatternChange |
private boolean |
isMaskVisible |
private static org.slf4j.Logger |
logger |
protected MaskFormatter |
maskFormatter |
protected String |
maskPattern |
private int |
millis |
private int |
minutes |
protected char |
placeholder |
private int |
seconds |
private static long |
serialVersionUID |
COMMIT, COMMIT_OR_REVERT, PERSIST, REVERTnotifyActionDEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEYaccessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWBOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTBOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WESTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
JTextFieldDateEditor() |
JTextFieldDateEditor(boolean showMask,
String datePattern,
String maskPattern,
char placeholder) |
JTextFieldDateEditor(String datePattern,
String maskPattern,
char placeholder) |
| Modifier and Type | Method and Description |
|---|---|
void |
actionPerformed(ActionEvent e)
Validates the typed date and sets it (only if it is valid).
|
void |
caretUpdate(CaretEvent event)
After any user input, the value of the textfield is proofed.
|
private void |
checkText() |
String |
createMaskFromDatePattern(String datePattern)
Creates a mask from a date pattern.
|
void |
focusGained(FocusEvent e) |
void |
focusLost(FocusEvent focusEvent) |
Date |
getDate()
Returns the date.
|
String |
getDateFormatString()
Returns tha date format string.
|
Date |
getMaxSelectableDate()
Gets the minimum selectable date.
|
Date |
getMinSelectableDate()
Gets the maximum selectable date.
|
Dimension |
getPreferredSize()
Returns the preferred size.
|
JComponent |
getUiComponent()
Returns the UI component, e.g. the actual JTextField implementing the
editor.
|
boolean |
isMaskVisible()
Returns true, if the mask is visible.
|
static void |
main(String[] s)
Creates a JFrame with a JCalendar inside and can be used for testing.
|
void |
setDate(Date date)
Sets the date.
|
protected void |
setDate(Date date,
boolean firePropertyChange)
Sets the date.
|
void |
setDateFormatString(String dateFormatString)
Sets the date format string, e.g.
|
void |
setEnabled(boolean b)
Enables and disabled the component.
|
void |
setLocale(Locale locale)
Sets the locale.
|
void |
setMaskVisible(boolean isMaskVisible)
Sets the mask visible.
|
void |
setMaxSelectableDate(Date max)
Sets the maximum selectable date.
|
void |
setMinSelectableDate(Date min)
Sets the minimum selectable date.
|
void |
setSelectableDateRange(Date min,
Date max)
Sets a valid date range for selectable dates.
|
commitEdit, getActions, getFocusLostBehavior, getFormatter, getFormatterFactory, getUIClassID, getValue, invalidEdit, isEditValid, processFocusEvent, processInputMethodEvent, setDocument, setFocusLostBehavior, setFormatter, setFormatterFactory, setValueactionPropertyChanged, addActionListener, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultModel, fireActionPerformed, getAccessibleContext, getAction, getActionListeners, getColumns, getColumnWidth, getHorizontalAlignment, getHorizontalVisibility, getScrollOffset, isValidateRoot, paramString, postActionEvent, removeActionListener, scrollRectToVisible, setAction, setActionCommand, setColumns, setFont, setHorizontalAlignment, setScrollOffsetaddCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, moveCaretPosition, paste, print, print, print, read, removeCaretListener, removeKeymap, removeNotify, replaceSelection, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, writeaddAncestorListener, 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, 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, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, 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, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, 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, processHierarchyBoundsEvent, processHierarchyEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListenerprivate static final org.slf4j.Logger logger
private static final long serialVersionUID
protected SimpleDateFormat dateFormatter
protected MaskFormatter maskFormatter
protected String datePattern
protected String maskPattern
protected char placeholder
private boolean isMaskVisible
private boolean ignoreDatePatternChange
private int hours
private int minutes
private int seconds
private int millis
public JTextFieldDateEditor()
public JTextFieldDateEditor(String datePattern, String maskPattern, char placeholder)
public JTextFieldDateEditor(boolean showMask, String datePattern, String maskPattern, char placeholder)
public Date getDate()
IDateEditorgetDate in interface IDateEditorpublic void setDate(Date date)
IDateEditorsetDate in interface IDateEditordate - the date to setprotected void setDate(Date date, boolean firePropertyChange)
date - the datefirePropertyChange - true, if the date property should be fired.public void setDateFormatString(String dateFormatString)
IDateEditorsetDateFormatString in interface IDateEditordateFormatString - the date format stringpublic String getDateFormatString()
IDateEditorgetDateFormatString in interface IDateEditorpublic JComponent getUiComponent()
IDateEditorgetUiComponent in interface IDateEditorpublic void caretUpdate(CaretEvent event)
caretUpdate in interface CaretListenerevent - the caret eventpublic void focusLost(FocusEvent focusEvent)
focusLost in interface FocusListenerprivate void checkText()
public void focusGained(FocusEvent e)
focusGained in interface FocusListenerpublic void setLocale(Locale locale)
IDateEditorsetLocale in interface IDateEditorsetLocale in class Componentlocale - the locale to setpublic String createMaskFromDatePattern(String datePattern)
datePattern - the date patternpublic boolean isMaskVisible()
public void setMaskVisible(boolean isMaskVisible)
isMaskVisible - true, if the mask should be visiblepublic Dimension getPreferredSize()
getPreferredSize in class JTextFieldpublic void actionPerformed(ActionEvent e)
actionPerformed in interface ActionListenerpublic void setEnabled(boolean b)
setEnabled in interface IDateEditorsetEnabled in class JComponentb - true, if the UI component should be enabled.public Date getMaxSelectableDate()
IDateEditorgetMaxSelectableDate in interface IDateEditorpublic Date getMinSelectableDate()
IDateEditorgetMinSelectableDate in interface IDateEditorpublic void setMaxSelectableDate(Date max)
IDateEditorsetMaxSelectableDate in interface IDateEditormax - maximum selectable datepublic void setMinSelectableDate(Date min)
IDateEditorsetMinSelectableDate in interface IDateEditormin - minimum selectable datepublic void setSelectableDateRange(Date min, Date max)
IDateEditorsetSelectableDateRange in interface IDateEditormin - the minimum selectable date or null (then the minimum date should be
set to 01\01\0001)max - the maximum selectable date or null (then the maximum date should be
set to 01\01\9999)