public class NumberTextField
extends javax.swing.JComponent
NumberTextField lets users increase values according to a provided formula of the form value = value * M + A, and similarly decrease values as value = (value - A) / M. You specify the values of M and A and the initial default value. This gives you some control on how values should change: linearly or geometrically.
You can exercise further control by subclassing the class and overriding the newValue(val) method, which filters all newly user-set values and "corrects" them. Programmatically set values (by calling setValue(...)) are not filtered through newValue by default. If you need to filter, you should do setValue(newValue(val));
NumberTextFields can also be provided with an optional label.
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
protected double |
currentValue |
static javax.swing.ImageIcon |
I_BELLY |
static javax.swing.ImageIcon |
I_BELLY_PRESSED |
static javax.swing.ImageIcon |
I_DOWN |
static javax.swing.ImageIcon |
I_DOWN_PRESSED |
static javax.swing.ImageIcon |
I_UP |
static javax.swing.ImageIcon |
I_UP_PRESSED |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
NumberTextField(double initialValue)
Creates a NumberTextField which does not display the belly button or arrows.
|
NumberTextField(double initialValue,
boolean doubleEachTime)
Creates a NumberTextField which (if
doubleEachTime )
doubles or halves the current value, or (if not doubleEachTime )
increases or decreases by 1 each time. |
NumberTextField(double initialValue,
double multiply,
double add)
Creates a NumberTextField according to the provided parameters.
|
NumberTextField(java.lang.String label,
double initialValue)
Creates a NumberTextField which does not display the belly button or arrows.
|
NumberTextField(java.lang.String label,
double initialValue,
boolean doubleEachTime)
Creates a NumberTextField with a provided label.
|
NumberTextField(java.lang.String label,
double initialValue,
double multiply,
double add)
Creates a NumberTextField with a provided label.
|
Modifier and Type | Method and Description |
---|---|
java.awt.Color |
getEditedColor() |
javax.swing.JTextField |
getField() |
double |
getInitialValue() |
java.lang.String |
getText() |
double |
getValue()
Returns the most recently set value.
|
double |
newValue(double newValue)
Override this to be informed when a new value has been set.
|
void |
setEditedColor(java.awt.Color c) |
void |
setEnabled(boolean b) |
void |
setInitialValue(double initialValue) |
void |
setText(java.lang.String val)
Only call this to access the value field directly
|
void |
setToolTipText(java.lang.String text) |
void |
setValue(double val)
Sets the value without filtering first.
|
void |
submit() |
void |
update() |
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, getUIClassID, 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
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
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, getAccessibleContext, 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, 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, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected double currentValue
public static final javax.swing.ImageIcon I_DOWN
public static final javax.swing.ImageIcon I_DOWN_PRESSED
public static final javax.swing.ImageIcon I_BELLY
public static final javax.swing.ImageIcon I_BELLY_PRESSED
public static final javax.swing.ImageIcon I_UP
public static final javax.swing.ImageIcon I_UP_PRESSED
public NumberTextField(double initialValue)
public NumberTextField(java.lang.String label, double initialValue)
public NumberTextField(double initialValue, boolean doubleEachTime)
doubleEachTime
)
doubles or halves the current value, or (if not doubleEachTime
)
increases or decreases by 1 each time.public NumberTextField(double initialValue, double multiply, double add)
If multiply is 0, then no arrows are shown at all.
public NumberTextField(java.lang.String label, double initialValue, boolean doubleEachTime)
doubleEachTime
)
doubles or halves the current value, or (if not doubleEachTime
)
increases or decreases by 1 each time.public NumberTextField(java.lang.String label, double initialValue, double multiply, double add)
If multiply is 0, then no arrows are shown at all.
public void setEditedColor(java.awt.Color c)
public java.awt.Color getEditedColor()
public void submit()
public void update()
public void setValue(double val)
public double getValue()
public javax.swing.JTextField getField()
public void setInitialValue(double initialValue)
public double getInitialValue()
public double newValue(double newValue)
public void setToolTipText(java.lang.String text)
setToolTipText
in class javax.swing.JComponent
public void setEnabled(boolean b)
setEnabled
in class javax.swing.JComponent
public void setText(java.lang.String val)
public java.lang.String getText()