Class JSlider
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Accessible,SwingConstants
The slider can show both
major tick marks, and minor tick marks between the major ones. The number of
values between the tick marks is controlled with
setMajorTickSpacing and setMinorTickSpacing.
Painting of tick marks is controlled by setPaintTicks.
Sliders can also print text labels at regular intervals (or at
arbitrary locations) along the slider track. Painting of labels is
controlled by setLabelTable and setPaintLabels.
For further information and examples see How to Use Sliders, a section in The Java Tutorial.
Warning: Swing is not thread safe. For more information see Swing's Threading Policy.
Warning:
Serialized objects of this class will not be compatible with
future Swing releases. The current serialization support is
appropriate for short term storage or RMI between applications running
the same version of Swing. As of 1.4, support for long term storage
of all JavaBeans
has been added to the java.beans package.
Please see XMLEncoder.
- Since:
- 1.2
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classThis class implements accessibility support for theJSliderclass.Nested classes/interfaces declared in class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces declared in class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces declared in class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ChangeEventOnly oneChangeEventis needed per slider instance since the event's only (read-only) state is the source property.protected ChangeListenerThe changeListener (no suffix) is the listener we add to the slider's model.protected intThe number of values between the major tick marks -- the larger marks that break up the minor tick marks.protected intThe number of values between the minor tick marks -- the smaller marks that occur between the major tick marks.protected intWhether the slider is horizontal or vertical The default is horizontal.protected BoundedRangeModelThe data model that handles the numeric maximum value, minimum value, and current-position value for the slider.protected booleanIf true, the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob.Fields declared in class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields declared in class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields declared in interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields declared in interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST -
Constructor Summary
ConstructorsConstructorDescriptionJSlider()Creates a horizontal slider with the range 0 to 100 and an initial value of 50.JSlider(int orientation) Creates a slider using the specified orientation with the range0to100and an initial value of50.JSlider(int min, int max) Creates a horizontal slider using the specified min and max with an initial value equal to the average of the min plus max.JSlider(int min, int max, int value) Creates a horizontal slider using the specified min, max and value.JSlider(int orientation, int min, int max, int value) Creates a slider with the specified orientation and the specified minimum, maximum, and initial values.JSlider(BoundedRangeModel brm) Creates a horizontal slider using the specified BoundedRangeModel. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a ChangeListener to the slider.protected ChangeListenerSubclasses that want to handleChangeEvents from the model differently can override this to return an instance of a customChangeListenerimplementation.createStandardLabels(int increment) Creates aHashtableof numerical text labels, starting at the slider minimum, and using the increment specified.createStandardLabels(int increment, int start) Creates aHashtableof numerical text labels, starting at the starting point specified, and using the increment specified.protected voidSend aChangeEvent, whose source is thisJSlider, to allChangeListeners that have registered interest inChangeEvents.Gets the AccessibleContext associated with this JSlider.Returns an array of all theChangeListeners added to this JSlider with addChangeListener().intReturns the "extent" from theBoundedRangeModel.booleanReturns true if the value-range shown for the slider is reversed,Returns the dictionary of what labels to draw at which values.intThis method returns the major tick spacing.intReturns the maximum value supported by the slider from theBoundedRangeModel.intReturns the minimum value supported by the slider from theBoundedRangeModel.intThis method returns the minor tick spacing.getModel()Returns theBoundedRangeModelthat handles the slider's three fundamental properties: minimum, maximum, value.intReturn this slider's vertical or horizontal orientation.booleanTells if labels are to be painted.booleanTells if tick marks are to be painted.booleanTells if the track (area the slider slides in) is to be painted.booleanReturns true if the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob.getUI()Gets the UI object which implements the L&F for this component.Returns the name of the L&F class that renders this component.intgetValue()Returns the slider's current value from theBoundedRangeModel.booleanReturns thevalueIsAdjustingproperty from the model.booleanimageUpdate(Image img, int infoflags, int x, int y, int w, int h) Repaints the component when the image has changed.protected StringReturns a string representation of this JSlider.voidRemoves a ChangeListener from the slider.voidsetExtent(int extent) Sets the size of the range "covered" by the knob.voidSets the font for this component.voidsetInverted(boolean b) Specify true to reverse the value-range shown for the slider and false to put the value range in the normal order.voidsetLabelTable(Dictionary labels) Used to specify what label will be drawn at any given value.voidsetMajorTickSpacing(int n) This method sets the major tick spacing.voidsetMaximum(int maximum) Sets the slider's maximum value tomaximum.voidsetMinimum(int minimum) Sets the slider's minimum value tominimum.voidsetMinorTickSpacing(int n) This method sets the minor tick spacing.voidsetModel(BoundedRangeModel newModel) Sets theBoundedRangeModelthat handles the slider's three fundamental properties: minimum, maximum, value.voidsetOrientation(int orientation) Set the slider's orientation to eitherSwingConstants.VERTICALorSwingConstants.HORIZONTAL.voidsetPaintLabels(boolean b) Determines whether labels are painted on the slider.voidsetPaintTicks(boolean b) Determines whether tick marks are painted on the slider.voidsetPaintTrack(boolean b) Determines whether the track is painted on the slider.voidsetSnapToTicks(boolean b) Specifying true makes the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob.voidSets the UI object which implements the L&F for this component.voidsetValue(int n) Sets the slider's current value ton.voidsetValueIsAdjusting(boolean b) Sets the model'svalueIsAdjustingproperty.protected voidUpdates the UIs for the labels in the label table by callingupdateUIon each label.voidupdateUI()Resets the UI property to a value from the current look and feel.Methods declared in class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, 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, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods declared in 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, validateTreeMethods declared in 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, 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, 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
-
Field Details
-
sliderModel
The data model that handles the numeric maximum value, minimum value, and current-position value for the slider. -
majorTickSpacing
protected int majorTickSpacingThe number of values between the major tick marks -- the larger marks that break up the minor tick marks. -
minorTickSpacing
protected int minorTickSpacingThe number of values between the minor tick marks -- the smaller marks that occur between the major tick marks.- See Also:
-
snapToTicks
protected boolean snapToTicksIf true, the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob. The default is false.- See Also:
-
orientation
protected int orientationWhether the slider is horizontal or vertical The default is horizontal.- See Also:
-
changeListener
The changeListener (no suffix) is the listener we add to the slider's model. This listener is initialized to theChangeListenerreturned fromcreateChangeListener, which by default just forwards events toChangeListeners (if any) added directly to the slider.- See Also:
-
changeEvent
Only oneChangeEventis needed per slider instance since the event's only (read-only) state is the source property. The source of events generated here is always "this". The event is lazily created the first time that an event notification is fired.- See Also:
-
-
Constructor Details
-
JSlider
public JSlider()Creates a horizontal slider with the range 0 to 100 and an initial value of 50. -
JSlider
public JSlider(int orientation) Creates a slider using the specified orientation with the range0to100and an initial value of50. The orientation can be eitherSwingConstants.VERTICALorSwingConstants.HORIZONTAL.- Parameters:
orientation- the orientation of the slider- Throws:
IllegalArgumentException- if orientation is not one ofVERTICAL,HORIZONTAL- See Also:
-
JSlider
public JSlider(int min, int max) Creates a horizontal slider using the specified min and max with an initial value equal to the average of the min plus max.The
BoundedRangeModelthat holds the slider's data handles any issues that may arise from improperly setting the minimum and maximum values on the slider. See theBoundedRangeModeldocumentation for details.- Parameters:
min- the minimum value of the slidermax- the maximum value of the slider- See Also:
-
JSlider
public JSlider(int min, int max, int value) Creates a horizontal slider using the specified min, max and value.The
BoundedRangeModelthat holds the slider's data handles any issues that may arise from improperly setting the minimum, initial, and maximum values on the slider. See theBoundedRangeModeldocumentation for details.- Parameters:
min- the minimum value of the slidermax- the maximum value of the slidervalue- the initial value of the slider- See Also:
-
JSlider
public JSlider(int orientation, int min, int max, int value) Creates a slider with the specified orientation and the specified minimum, maximum, and initial values. The orientation can be eitherSwingConstants.VERTICALorSwingConstants.HORIZONTAL.The
BoundedRangeModelthat holds the slider's data handles any issues that may arise from improperly setting the minimum, initial, and maximum values on the slider. See theBoundedRangeModeldocumentation for details.- Parameters:
orientation- the orientation of the slidermin- the minimum value of the slidermax- the maximum value of the slidervalue- the initial value of the slider- Throws:
IllegalArgumentException- if orientation is not one ofVERTICAL,HORIZONTAL- See Also:
-
JSlider
Creates a horizontal slider using the specified BoundedRangeModel.- Parameters:
brm- aBoundedRangeModelfor the slider
-
-
Method Details
-
getUI
Gets the UI object which implements the L&F for this component.- Overrides:
getUIin classJComponent- Returns:
- the SliderUI object that implements the Slider L&F
-
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the slider's LookAndFeel.") public void setUI(SliderUI ui) Sets the UI object which implements the L&F for this component.- Parameters:
ui- the SliderUI L&F object- See Also:
-
updateUI
public void updateUI()Resets the UI property to a value from the current look and feel.- Overrides:
updateUIin classJComponent- See Also:
-
getUIClassID
Returns the name of the L&F class that renders this component.- Overrides:
getUIClassIDin classJComponent- Returns:
- the string "SliderUI"
- See Also:
-
createChangeListener
Subclasses that want to handleChangeEvents from the model differently can override this to return an instance of a customChangeListenerimplementation. The defaultChangeListenersimply calls thefireStateChangedmethod to forwardChangeEvents to theChangeListeners that have been added directly to the slider.- Returns:
- a instance of new
ChangeListener - See Also:
-
addChangeListener
Adds a ChangeListener to the slider.- Parameters:
l- the ChangeListener to add- See Also:
-
removeChangeListener
Removes a ChangeListener from the slider.- Parameters:
l- the ChangeListener to remove- See Also:
-
getChangeListeners
Returns an array of all theChangeListeners added to this JSlider with addChangeListener().- Returns:
- all of the
ChangeListeners added or an empty array if no listeners have been added - Since:
- 1.4
-
fireStateChanged
protected void fireStateChanged()Send aChangeEvent, whose source is thisJSlider, to allChangeListeners that have registered interest inChangeEvents. This method is called each time aChangeEventis received from the model.The event instance is created if necessary, and stored in
changeEvent.- See Also:
-
getModel
Returns theBoundedRangeModelthat handles the slider's three fundamental properties: minimum, maximum, value.- Returns:
- the data model for this component
- See Also:
-
setModel
@BeanProperty(description="The sliders BoundedRangeModel.") public void setModel(BoundedRangeModel newModel) Sets theBoundedRangeModelthat handles the slider's three fundamental properties: minimum, maximum, value.Attempts to pass a
nullmodel to this method result in undefined behavior, and, most likely, exceptions.- Parameters:
newModel- the new,non-nullBoundedRangeModelto use- See Also:
-
getValue
public int getValue()Returns the slider's current value from theBoundedRangeModel.- Returns:
- the current value of the slider
- See Also:
-
setValue
@BeanProperty(bound=false, preferred=true, description="The sliders current value.") public void setValue(int n) Sets the slider's current value ton. This method forwards the new value to the model.The data model (an instance of
BoundedRangeModel) handles any mathematical issues arising from assigning faulty values. See theBoundedRangeModeldocumentation for details.If the new value is different from the previous value, all change listeners are notified.
- Parameters:
n- the new value- See Also:
-
getMinimum
public int getMinimum()Returns the minimum value supported by the slider from theBoundedRangeModel.- Returns:
- the value of the model's minimum property
- See Also:
-
setMinimum
@BeanProperty(preferred=true, description="The sliders minimum value.") public void setMinimum(int minimum) Sets the slider's minimum value tominimum. This method forwards the new minimum value to the model.The data model (an instance of
BoundedRangeModel) handles any mathematical issues arising from assigning faulty values. See theBoundedRangeModeldocumentation for details.If the new minimum value is different from the previous minimum value, all change listeners are notified.
- Parameters:
minimum- the new minimum- See Also:
-
getMaximum
public int getMaximum()Returns the maximum value supported by the slider from theBoundedRangeModel.- Returns:
- the value of the model's maximum property
- See Also:
-
setMaximum
@BeanProperty(preferred=true, description="The sliders maximum value.") public void setMaximum(int maximum) Sets the slider's maximum value tomaximum. This method forwards the new maximum value to the model.The data model (an instance of
BoundedRangeModel) handles any mathematical issues arising from assigning faulty values. See theBoundedRangeModeldocumentation for details.If the new maximum value is different from the previous maximum value, all change listeners are notified.
- Parameters:
maximum- the new maximum- See Also:
-
getValueIsAdjusting
public boolean getValueIsAdjusting()Returns thevalueIsAdjustingproperty from the model. For details on how this is used, see thesetValueIsAdjustingdocumentation.- Returns:
- the value of the model's
valueIsAdjustingproperty - See Also:
-
setValueIsAdjusting
@BeanProperty(bound=false, expert=true, description="True if the slider knob is being dragged.") public void setValueIsAdjusting(boolean b) Sets the model'svalueIsAdjustingproperty. Slider look and feel implementations should set this property totruewhen a knob drag begins, and tofalsewhen the drag ends.- Parameters:
b- the new value for thevalueIsAdjustingproperty- See Also:
-
getExtent
public int getExtent()Returns the "extent" from theBoundedRangeModel. This represents the range of values "covered" by the knob.- Returns:
- an int representing the extent
- See Also:
-
setExtent
@BeanProperty(bound=false, expert=true, description="Size of the range covered by the knob.") public void setExtent(int extent) Sets the size of the range "covered" by the knob. Most look and feel implementations will change the value by this amount if the user clicks on either side of the knob. This method just forwards the new extent value to the model.The data model (an instance of
BoundedRangeModel) handles any mathematical issues arising from assigning faulty values. See theBoundedRangeModeldocumentation for details.If the new extent value is different from the previous extent value, all change listeners are notified.
- Parameters:
extent- the new extent- See Also:
-
getOrientation
public int getOrientation()Return this slider's vertical or horizontal orientation.- Returns:
SwingConstants.VERTICALorSwingConstants.HORIZONTAL- See Also:
-
setOrientation
@BeanProperty(preferred=true, visualUpdate=true, enumerationValues={"JSlider.VERTICAL","JSlider.HORIZONTAL"}, description="Set the scrollbars orientation to either VERTICAL or HORIZONTAL.") public void setOrientation(int orientation) Set the slider's orientation to eitherSwingConstants.VERTICALorSwingConstants.HORIZONTAL.- Parameters:
orientation-HORIZONTALorVERTICAL- Throws:
IllegalArgumentException- if orientation is not one ofVERTICAL,HORIZONTAL- See Also:
-
setFont
Sets the font for this component.- Overrides:
setFontin classJComponent- Parameters:
font- the desiredFontfor this component- Since:
- 1.6
- See Also:
-
imageUpdate
Repaints the component when the image has changed. ThisimageUpdatemethod of anImageObserveris called when more information about an image which had been previously requested using an asynchronous routine such as thedrawImagemethod ofGraphicsbecomes available. See the definition ofimageUpdatefor more information on this method and its arguments.The
imageUpdatemethod ofComponentincrementally draws an image on the component as more of the bits of the image are available.If the system property
awt.image.incrementaldrawis missing or has the valuetrue, the image is incrementally drawn. If the system property has any other value, then the image is not drawn until it has been completely loaded.Also, if incremental drawing is in effect, the value of the system property
awt.image.redrawrateis interpreted as an integer to give the maximum redraw rate, in milliseconds. If the system property is missing or cannot be interpreted as an integer, the redraw rate is once every 100ms.The interpretation of the
x,y,width, andheightarguments depends on the value of theinfoflagsargument.- Specified by:
imageUpdatein interfaceImageObserver- Overrides:
imageUpdatein classComponent- Parameters:
img- the image being observedinfoflags- seeimageUpdatefor more informationx- the x coordinatey- the y coordinatew- the widthh- the height- Returns:
falseif the infoflags indicate that the image is completely loaded;trueotherwise.- Since:
- 1.7
- See Also:
-
getLabelTable
Returns the dictionary of what labels to draw at which values.- Returns:
- the
Dictionarycontaining labels and where to draw them
-
setLabelTable
@BeanProperty(hidden=true, visualUpdate=true, description="Specifies what labels will be drawn for any given value.") public void setLabelTable(Dictionary labels) Used to specify what label will be drawn at any given value. The key-value pairs are of this format:{ Integer value, java.swing.JComponent label }.An easy way to generate a standard table of value labels is by using the
createStandardLabelsmethod.Once the labels have been set, this method calls
updateLabelUIs(). Note that the labels are only painted if thepaintLabelsproperty istrue.- Parameters:
labels- newDictionaryof labels, ornullto remove all labels- See Also:
-
updateLabelUIs
protected void updateLabelUIs()Updates the UIs for the labels in the label table by callingupdateUIon each label. The UIs are updated from the current look and feel. The labels are also set to their preferred size.- See Also:
-
createStandardLabels
Creates aHashtableof numerical text labels, starting at the slider minimum, and using the increment specified. For example, if you callcreateStandardLabels( 10 )and the slider minimum is zero, then labels will be created for the values 0, 10, 20, 30, and so on.For the labels to be drawn on the slider, the returned
Hashtablemust be passed intosetLabelTable, andsetPaintLabelsmust be set totrue.For further details on the makeup of the returned
Hashtable, see thesetLabelTabledocumentation.- Parameters:
increment- distance between labels in the generated hashtable- Returns:
- a new
Hashtableof labels - Throws:
IllegalArgumentException- ifincrementis less than or equal to zero- See Also:
-
createStandardLabels
Creates aHashtableof numerical text labels, starting at the starting point specified, and using the increment specified. For example, if you callcreateStandardLabels( 10, 2 ), then labels will be created for the values 2, 12, 22, 32, and so on.For the labels to be drawn on the slider, the returned
Hashtablemust be passed intosetLabelTable, andsetPaintLabelsmust be set totrue.For further details on the makeup of the returned
Hashtable, see thesetLabelTabledocumentation.- Parameters:
increment- distance between labels in the generated hashtablestart- value at which the labels will begin- Returns:
- a new
Hashtableof labels - Throws:
IllegalArgumentException- ifstartis out of range, or ifincrementis less than or equal to zero- See Also:
-
getInverted
public boolean getInverted()Returns true if the value-range shown for the slider is reversed,- Returns:
- true if the slider values are reversed from their normal order
- See Also:
-
setInverted
@BeanProperty(visualUpdate=true, description="If true reverses the slider values from their normal order") public void setInverted(boolean b) Specify true to reverse the value-range shown for the slider and false to put the value range in the normal order. The order depends on the slider'sComponentOrientationproperty. Normal (non-inverted) horizontal sliders with aComponentOrientationvalue ofLEFT_TO_RIGHThave their maximum on the right. Normal horizontal sliders with aComponentOrientationvalue ofRIGHT_TO_LEFThave their maximum on the left. Normal vertical sliders have their maximum on the top. These labels are reversed when the slider is inverted.By default, the value of this property is
false.- Parameters:
b- true to reverse the slider values from their normal order
-
getMajorTickSpacing
public int getMajorTickSpacing()This method returns the major tick spacing. The number that is returned represents the distance, measured in values, between each major tick mark. If you have a slider with a range from 0 to 50 and the major tick spacing is set to 10, you will get major ticks next to the following values: 0, 10, 20, 30, 40, 50.- Returns:
- the number of values between major ticks
- See Also:
-
setMajorTickSpacing
@BeanProperty(visualUpdate=true, description="Sets the number of values between major tick marks.") public void setMajorTickSpacing(int n) This method sets the major tick spacing. The number that is passed in represents the distance, measured in values, between each major tick mark. If you have a slider with a range from 0 to 50 and the major tick spacing is set to 10, you will get major ticks next to the following values: 0, 10, 20, 30, 40, 50.In order for major ticks to be painted,
setPaintTicksmust be set totrue.This method will also set up a label table for you. If there is not already a label table, and the major tick spacing is
> 0, andgetPaintLabelsreturnstrue, a standard label table will be generated (by callingcreateStandardLabels) with labels at the major tick marks. For the example above, you would get text labels: "0", "10", "20", "30", "40", "50". The label table is then set on the slider by callingsetLabelTable.- Parameters:
n- new value for themajorTickSpacingproperty- See Also:
-
getMinorTickSpacing
public int getMinorTickSpacing()This method returns the minor tick spacing. The number that is returned represents the distance, measured in values, between each minor tick mark. If you have a slider with a range from 0 to 50 and the minor tick spacing is set to 10, you will get minor ticks next to the following values: 0, 10, 20, 30, 40, 50.- Returns:
- the number of values between minor ticks
- See Also:
-
setMinorTickSpacing
@BeanProperty(visualUpdate=true, description="Sets the number of values between minor tick marks.") public void setMinorTickSpacing(int n) This method sets the minor tick spacing. The number that is passed in represents the distance, measured in values, between each minor tick mark. If you have a slider with a range from 0 to 50 and the minor tick spacing is set to 10, you will get minor ticks next to the following values: 0, 10, 20, 30, 40, 50.In order for minor ticks to be painted,
setPaintTicksmust be set totrue.- Parameters:
n- new value for theminorTickSpacingproperty- See Also:
-
getSnapToTicks
public boolean getSnapToTicks()Returns true if the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob.- Returns:
- true if the value snaps to the nearest tick mark, else false
- See Also:
-
setSnapToTicks
@BeanProperty(description="If true snap the knob to the nearest tick mark.") public void setSnapToTicks(boolean b) Specifying true makes the knob (and the data value it represents) resolve to the closest tick mark next to where the user positioned the knob. By default, this property isfalse.- Parameters:
b- true to snap the knob to the nearest tick mark- See Also:
-
getPaintTicks
public boolean getPaintTicks()Tells if tick marks are to be painted.- Returns:
- true if tick marks are painted, else false
- See Also:
-
setPaintTicks
@BeanProperty(visualUpdate=true, description="If true tick marks are painted on the slider.") public void setPaintTicks(boolean b) Determines whether tick marks are painted on the slider. By default, this property isfalse.- Parameters:
b- whether or not tick marks should be painted- See Also:
-
getPaintTrack
public boolean getPaintTrack()Tells if the track (area the slider slides in) is to be painted.- Returns:
- true if track is painted, else false
- See Also:
-
setPaintTrack
@BeanProperty(visualUpdate=true, description="If true, the track is painted on the slider.") public void setPaintTrack(boolean b) Determines whether the track is painted on the slider. By default, this property istrue. It is up to the look and feel to honor this property, some may choose to ignore it.- Parameters:
b- whether or not to paint the slider track- See Also:
-
getPaintLabels
public boolean getPaintLabels()Tells if labels are to be painted.- Returns:
- true if labels are painted, else false
- See Also:
-
setPaintLabels
@BeanProperty(visualUpdate=true, description="If true labels are painted on the slider.") public void setPaintLabels(boolean b) Determines whether labels are painted on the slider.This method will also set up a label table for you. If there is not already a label table, and the major tick spacing is
> 0, a standard label table will be generated (by callingcreateStandardLabels) with labels at the major tick marks. The label table is then set on the slider by callingsetLabelTable.By default, this property is
false.- Parameters:
b- whether or not to paint labels- See Also:
-
paramString
Returns a string representation of this JSlider. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not benull.- Overrides:
paramStringin classJComponent- Returns:
- a string representation of this JSlider.
-
getAccessibleContext
Gets the AccessibleContext associated with this JSlider. For sliders, the AccessibleContext takes the form of an AccessibleJSlider. A new AccessibleJSlider instance is created if necessary.- Specified by:
getAccessibleContextin interfaceAccessible- Overrides:
getAccessibleContextin classComponent- Returns:
- an AccessibleJSlider that serves as the AccessibleContext of this JSlider
-