com.toedter.components
Class JSpinField

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--com.toedter.components.JSpinField
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.awt.event.AdjustmentListener, javax.swing.event.CaretListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
JYearChooser

public class JSpinField
extends javax.swing.JPanel
implements javax.swing.event.CaretListener, java.awt.event.AdjustmentListener, java.awt.event.ActionListener

JSpinField is a numeric field with 2 spin buttons to increase or decrease the value.

Version:
1.1.4 07/16/02
Author:
Kai Toedter
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JScrollBar scrollBar
          the scrollbar for the spin buttons
protected  javax.swing.JTextField textField
          the text (number) field
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
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
JSpinField()
          Default JSpinField constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          After any user input, the value of the textfield is proofed.
 void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
          The 2 buttons are implemented with a JScrollBar.
 void caretUpdate(javax.swing.event.CaretEvent e)
          After any user input, the value of the textfield is proofed.
 int getMaximum()
          Returns the maximum value.
 int getMinimum()
          Returns the minimum value.
 int getValue()
          Returns the value.
static void main(java.lang.String[] s)
          Creates a JFrame with a JSpinField inside and can be used for testing.
 void setEnabled(boolean enabled)
          Enable or disable the JSpinField.
 void setFont(java.awt.Font font)
          Sets the font property.
 void setForeground(java.awt.Color fg)
          Sets the foreground color.
 void setHorizontalAlignment(int alignment)
          Sets the horizontal alignment of the displayed value.
 void setMaximum(int newMaximum)
          Sets the maximum value and adjusts the preferred width.
 void setMinimum(int newMinimum)
          Sets the minimum value.
 void setValue(int newValue)
          Sets the value.
protected  void setValue(int newValue, boolean updateTextField, boolean updateScrollbar)
          Sets the value attribute of the JSpinField object
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

textField

protected javax.swing.JTextField textField
the text (number) field


scrollBar

protected javax.swing.JScrollBar scrollBar
the scrollbar for the spin buttons

Constructor Detail

JSpinField

public JSpinField()
Default JSpinField constructor.

Method Detail

setValue

protected void setValue(int newValue,
                        boolean updateTextField,
                        boolean updateScrollbar)
Sets the value attribute of the JSpinField object

Parameters:
newValue - The new value value
updateTextField - The new value value
updateScrollbar - The new value value

setValue

public void setValue(int newValue)
Sets the value. This is a bound property.

Parameters:
newValue - the new value
See Also:
getValue()

getValue

public int getValue()
Returns the value.

Returns:
The value value

setMinimum

public void setMinimum(int newMinimum)
Sets the minimum value.

Parameters:
newMinimum - the new minimum value
See Also:
getMinimum()

getMinimum

public int getMinimum()
Returns the minimum value.

Returns:
The minimum value

setMaximum

public void setMaximum(int newMaximum)
Sets the maximum value and adjusts the preferred width.

Parameters:
newMaximum - the new maximum value
See Also:
getMaximum()

setHorizontalAlignment

public void setHorizontalAlignment(int alignment)
Sets the horizontal alignment of the displayed value.


getMaximum

public int getMaximum()
Returns the maximum value.

Returns:
The maximum value

setFont

public void setFont(java.awt.Font font)
Sets the font property.

Overrides:
setFont in class javax.swing.JComponent
Parameters:
font - the new font

setForeground

public void setForeground(java.awt.Color fg)
Sets the foreground color.

Overrides:
setForeground in class javax.swing.JComponent
Parameters:
fg - the new foreground

caretUpdate

public void caretUpdate(javax.swing.event.CaretEvent e)
After any user input, the value of the textfield is proofed. Depending on being an integer, the value is colored green or red.

Specified by:
caretUpdate in interface javax.swing.event.CaretListener
Parameters:
e - Description of the Parameter

adjustmentValueChanged

public void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
The 2 buttons are implemented with a JScrollBar.

Specified by:
adjustmentValueChanged in interface java.awt.event.AdjustmentListener
Parameters:
e - Description of the Parameter

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
After any user input, the value of the textfield is proofed. Depending on being an integer, the value is colored green or red. If the textfield is green, the enter key is accepted and the new value is set.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
e - Description of the Parameter

setEnabled

public void setEnabled(boolean enabled)
Enable or disable the JSpinField.

Overrides:
setEnabled in class javax.swing.JComponent
Parameters:
enabled - The new enabled value

main

public static void main(java.lang.String[] s)
Creates a JFrame with a JSpinField inside and can be used for testing.

Parameters:
s - The command line arguments


Copyright © 2002 Kai Toedter.