- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.layout.Region
-
- javafx.scene.control.Control
-
- org.controlsfx.control.StatusBar
-
- All Implemented Interfaces:
javafx.css.Styleable
,javafx.event.EventTarget
,javafx.scene.control.Skinnable
public class StatusBar extends javafx.scene.control.Control
The StatusBar control is normally placed at the bottom of a window. It is used to display various types of application status information. This can be a text message, the progress of a task, or any other kind of status (e.g. red / green / yellow lights). By default the status bar contains a label for displaying plain text and a progress bar (seeProgressBar
) for long running tasks. Additional controls / nodes can be placed on the left and right sides (seegetLeftItems()
andgetRightItems()
).Screenshots
The picture below shows the default appearance of the StatusBar control:
The following picture shows the status bar reporting progress of a task:
The last picture shows the status bar reporting progress, along with a couple of extra items added to the left and right areas of the bar:Code Sample
StatusBar statusBar = new StatusBar(); statusBar.getLeftItems().add(new Button("Info")); statusBar.setProgress(.5);
-
-
Constructor Summary
Constructors Constructor Description StatusBar()
Constructs a new status bar control.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected javafx.scene.control.Skin<?>
createDefaultSkin()
javafx.scene.Node
getGraphic()
Returns the value of thegraphicProperty()
.javafx.collections.ObservableList<javafx.scene.Node>
getLeftItems()
Returns the list of items / nodes that will be shown to the left of the status label.double
getProgress()
Returns the value ofprogressProperty()
.javafx.collections.ObservableList<javafx.scene.Node>
getRightItems()
Returns the list of items / nodes that will be shown to the right of the status label.String
getStyleText()
A string representation of the CSS style associated with this Text.String
getText()
Returns the value of thetextProperty()
.String
getUserAgentStylesheet()
protected String
getUserAgentStylesheet(Class<?> clazz, String fileName)
A helper method that ensures that the resource based lookup of the user agent stylesheet only happens once.javafx.beans.property.ObjectProperty<javafx.scene.Node>
graphicProperty()
The property used to store a graphic node that can be displayed by the status label inside the status bar control.javafx.beans.property.DoubleProperty
progressProperty()
The property used to store the progress, a value between 0 and 1.void
setGraphic(javafx.scene.Node node)
Sets the value ofgraphicProperty()
.void
setProgress(double progress)
Sets the value of theprogressProperty()
.void
setStyleText(String style)
A string representation of the CSS style associated with this Text.Node.setStyle(java.lang.String)
void
setText(String text)
Sets the value of thetextProperty()
.javafx.beans.property.StringProperty
styleTextProperty()
Return the BooleanProperty associated with the style applied to the text.javafx.beans.property.StringProperty
textProperty()
The property used for storing the text message shown by the status bar.-
Methods inherited from class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
-
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Methods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
Methods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
-
-
-
Method Detail
-
createDefaultSkin
protected javafx.scene.control.Skin<?> createDefaultSkin()
- Overrides:
createDefaultSkin
in classjavafx.scene.control.Control
-
getUserAgentStylesheet
public String getUserAgentStylesheet()
- Overrides:
getUserAgentStylesheet
in classjavafx.scene.layout.Region
-
textProperty
public final javafx.beans.property.StringProperty textProperty()
The property used for storing the text message shown by the status bar.- Returns:
- the text message property
-
setText
public final void setText(String text)
Sets the value of thetextProperty()
.- Parameters:
text
- the text shown by the label control inside the status bar
-
getText
public final String getText()
Returns the value of thetextProperty()
.- Returns:
- the text currently shown by the status bar
-
graphicProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> graphicProperty()
The property used to store a graphic node that can be displayed by the status label inside the status bar control.- Returns:
- the property used for storing a graphic node
-
getGraphic
public final javafx.scene.Node getGraphic()
Returns the value of thegraphicProperty()
.- Returns:
- the graphic node shown by the label inside the status bar
-
setGraphic
public final void setGraphic(javafx.scene.Node node)
Sets the value ofgraphicProperty()
.- Parameters:
node
- the graphic node shown by the label inside the status bar
-
setStyleText
public void setStyleText(String style)
A string representation of the CSS style associated with this Text.Node.setStyle(java.lang.String)
- Parameters:
style
-
-
getStyleText
public String getStyleText()
A string representation of the CSS style associated with this Text.Node.getStyle()
- Returns:
- the style applied on the text.
-
styleTextProperty
public final javafx.beans.property.StringProperty styleTextProperty()
Return the BooleanProperty associated with the style applied to the text.- Returns:
- the BooleanProperty associated with the style applied to the text.
-
getLeftItems
public final javafx.collections.ObservableList<javafx.scene.Node> getLeftItems()
Returns the list of items / nodes that will be shown to the left of the status label.- Returns:
- the items on the left-hand side of the status bar
-
getRightItems
public final javafx.collections.ObservableList<javafx.scene.Node> getRightItems()
Returns the list of items / nodes that will be shown to the right of the status label.- Returns:
- the items on the left-hand side of the status bar
-
progressProperty
public final javafx.beans.property.DoubleProperty progressProperty()
The property used to store the progress, a value between 0 and 1. A negative value causes the progress bar to show an indeterminate state.- Returns:
- the property used to store the progress of a task
-
setProgress
public final void setProgress(double progress)
Sets the value of theprogressProperty()
.- Parameters:
progress
- the new progress value
-
getProgress
public final double getProgress()
Returns the value ofprogressProperty()
.- Returns:
- the current progress value
-
getUserAgentStylesheet
protected final String getUserAgentStylesheet(Class<?> clazz, String fileName)
A helper method that ensures that the resource based lookup of the user agent stylesheet only happens once. Caches the external form of the resource.- Parameters:
clazz
- the class used for the resource lookupfileName
- the name of the user agent stylesheet- Returns:
- the external form of the user agent stylesheet (the path)
-
-