|
| | ScrollBar (bool isVertical) |
| | ~ScrollBar () override |
| bool | isVertical () const noexcept |
| void | setOrientation (bool shouldBeVertical) |
| void | setAutoHide (bool shouldHideWhenFullRange) |
| bool | autoHides () const noexcept |
| void | setRangeLimits (Range< double > newRangeLimit, NotificationType notification=sendNotificationAsync) |
| void | setRangeLimits (double minimum, double maximum, NotificationType notification=sendNotificationAsync) |
| Range< double > | getRangeLimit () const noexcept |
| double | getMinimumRangeLimit () const noexcept |
| double | getMaximumRangeLimit () const noexcept |
| bool | setCurrentRange (Range< double > newRange, NotificationType notification=sendNotificationAsync) |
| void | setCurrentRange (double newStart, double newSize, NotificationType notification=sendNotificationAsync) |
| void | setCurrentRangeStart (double newStart, NotificationType notification=sendNotificationAsync) |
| Range< double > | getCurrentRange () const noexcept |
| double | getCurrentRangeStart () const noexcept |
| double | getCurrentRangeSize () const noexcept |
| void | setSingleStepSize (double newSingleStepSize) noexcept |
| double | getSingleStepSize () const noexcept |
| bool | moveScrollbarInSteps (int howManySteps, NotificationType notification=sendNotificationAsync) |
| bool | moveScrollbarInPages (int howManyPages, NotificationType notification=sendNotificationAsync) |
| bool | scrollToTop (NotificationType notification=sendNotificationAsync) |
| bool | scrollToBottom (NotificationType notification=sendNotificationAsync) |
| void | setButtonRepeatSpeed (int initialDelayInMillisecs, int repeatDelayInMillisecs, int minimumDelayInMillisecs=-1) |
| void | addListener (Listener *listener) |
| void | removeListener (Listener *listener) |
| bool | keyPressed (const KeyPress &) override |
| void | mouseWheelMove (const MouseEvent &, const MouseWheelDetails &) override |
| void | lookAndFeelChanged () override |
| void | mouseDown (const MouseEvent &) override |
| void | mouseDrag (const MouseEvent &) override |
| void | mouseUp (const MouseEvent &) override |
| void | paint (Graphics &) override |
| void | resized () override |
| void | parentHierarchyChanged () override |
| void | setVisible (bool) override |
| | Component () noexcept |
| | ~Component () override |
| | Component (const String &componentName) noexcept |
| String | getName () const noexcept |
| virtual void | setName (const String &newName) |
| String | getComponentID () const noexcept |
| void | setComponentID (const String &newID) |
| bool | isVisible () const noexcept |
| virtual void | visibilityChanged () |
| bool | isShowing () const |
| virtual void | addToDesktop (int windowStyleFlags, void *nativeWindowToAttachTo=nullptr) |
| void | removeFromDesktop () |
| bool | isOnDesktop () const noexcept |
| ComponentPeer * | getPeer () const |
| virtual void | userTriedToCloseWindow () |
| virtual void | minimisationStateChanged (bool isNowMinimised) |
| virtual float | getDesktopScaleFactor () const |
| void | toFront (bool shouldAlsoGainKeyboardFocus) |
| void | toBack () |
| void | toBehind (Component *other) |
| void | setAlwaysOnTop (bool shouldStayOnTop) |
| bool | isAlwaysOnTop () const noexcept |
| int | getX () const noexcept |
| int | getY () const noexcept |
| int | getWidth () const noexcept |
| int | getHeight () const noexcept |
| int | getRight () const noexcept |
| Point< int > | getPosition () const noexcept |
| int | getBottom () const noexcept |
| Rectangle< int > | getBounds () const noexcept |
| Rectangle< int > | getLocalBounds () const noexcept |
| Rectangle< int > | getBoundsInParent () const noexcept |
| int | getScreenX () const |
| int | getScreenY () const |
| Point< int > | getScreenPosition () const |
| Rectangle< int > | getScreenBounds () const |
| Point< int > | getLocalPoint (const Component *sourceComponent, Point< int > pointRelativeToSourceComponent) const |
| Point< float > | getLocalPoint (const Component *sourceComponent, Point< float > pointRelativeToSourceComponent) const |
| Rectangle< int > | getLocalArea (const Component *sourceComponent, Rectangle< int > areaRelativeToSourceComponent) const |
| Rectangle< float > | getLocalArea (const Component *sourceComponent, Rectangle< float > areaRelativeToSourceComponent) const |
| Point< int > | localPointToGlobal (Point< int > localPoint) const |
| Point< float > | localPointToGlobal (Point< float > localPoint) const |
| Rectangle< int > | localAreaToGlobal (Rectangle< int > localArea) const |
| Rectangle< float > | localAreaToGlobal (Rectangle< float > localArea) const |
| void | setTopLeftPosition (int x, int y) |
| void | setTopLeftPosition (Point< int > newTopLeftPosition) |
| void | setTopRightPosition (int x, int y) |
| void | setSize (int newWidth, int newHeight) |
| void | setBounds (int x, int y, int width, int height) |
| void | setBounds (Rectangle< int > newBounds) |
| void | setBoundsRelative (float proportionalX, float proportionalY, float proportionalWidth, float proportionalHeight) |
| void | setBoundsRelative (Rectangle< float > proportionalArea) |
| void | setBoundsInset (BorderSize< int > borders) |
| void | setBoundsToFit (Rectangle< int > targetArea, Justification justification, bool onlyReduceInSize) |
| void | setCentrePosition (int x, int y) |
| void | setCentrePosition (Point< int > newCentrePosition) |
| void | setCentreRelative (float x, float y) |
| void | centreWithSize (int width, int height) |
| void | setTransform (const AffineTransform &transform) |
| AffineTransform | getTransform () const |
| bool | isTransformed () const noexcept |
| int | proportionOfWidth (float proportion) const noexcept |
| int | proportionOfHeight (float proportion) const noexcept |
| int | getParentWidth () const noexcept |
| int | getParentHeight () const noexcept |
| Rectangle< int > | getParentMonitorArea () const |
| int | getNumChildComponents () const noexcept |
| Component * | getChildComponent (int index) const noexcept |
| int | getIndexOfChildComponent (const Component *child) const noexcept |
| const Array< Component * > & | getChildren () const noexcept |
| Component * | findChildWithID (StringRef componentID) const noexcept |
| void | addChildComponent (Component *child, int zOrder=-1) |
| void | addChildComponent (Component &child, int zOrder=-1) |
| void | addAndMakeVisible (Component *child, int zOrder=-1) |
| void | addAndMakeVisible (Component &child, int zOrder=-1) |
| void | addChildAndSetID (Component *child, const String &componentID) |
| void | removeChildComponent (Component *childToRemove) |
| Component * | removeChildComponent (int childIndexToRemove) |
| void | removeAllChildren () |
| void | deleteAllChildren () |
| Component * | getParentComponent () const noexcept |
| template<class TargetClass> |
| TargetClass * | findParentComponentOfClass () const |
| Component * | getTopLevelComponent () const noexcept |
| bool | isParentOf (const Component *possibleChild) const noexcept |
| virtual void | childrenChanged () |
| virtual bool | hitTest (int x, int y) |
| void | setInterceptsMouseClicks (bool allowClicksOnThisComponent, bool allowClicksOnChildComponents) noexcept |
| void | getInterceptsMouseClicks (bool &allowsClicksOnThisComponent, bool &allowsClicksOnChildComponents) const noexcept |
| bool | contains (Point< int > localPoint) |
| bool | contains (Point< float > localPoint) |
| bool | reallyContains (Point< int > localPoint, bool returnTrueIfWithinAChild) |
| bool | reallyContains (Point< float > localPoint, bool returnTrueIfWithinAChild) |
| Component * | getComponentAt (int x, int y) |
| Component * | getComponentAt (Point< int > position) |
| Component * | getComponentAt (Point< float > position) |
| void | repaint () |
| void | repaint (int x, int y, int width, int height) |
| void | repaint (Rectangle< int > area) |
| void | setBufferedToImage (bool shouldBeBuffered) |
| Image | createComponentSnapshot (Rectangle< int > areaToGrab, bool clipImageToComponentBounds=true, float scaleFactor=1.0f) |
| void | paintEntireComponent (Graphics &context, bool ignoreAlphaLevel) |
| void | setPaintingIsUnclipped (bool shouldPaintWithoutClipping) noexcept |
| bool | isPaintingUnclipped () const noexcept |
| void | setComponentEffect (ImageEffectFilter *newEffect) |
| ImageEffectFilter * | getComponentEffect () const noexcept |
| LookAndFeel & | getLookAndFeel () const noexcept |
| void | setLookAndFeel (LookAndFeel *newLookAndFeel) |
| void | sendLookAndFeelChange () |
| void | setOpaque (bool shouldBeOpaque) |
| bool | isOpaque () const noexcept |
| void | setBroughtToFrontOnMouseClick (bool shouldBeBroughtToFront) noexcept |
| bool | isBroughtToFrontOnMouseClick () const noexcept |
| void | setExplicitFocusOrder (int newFocusOrderIndex) |
| int | getExplicitFocusOrder () const |
| void | setFocusContainerType (FocusContainerType containerType) noexcept |
| bool | isFocusContainer () const noexcept |
| bool | isKeyboardFocusContainer () const noexcept |
| Component * | findFocusContainer () const |
| Component * | findKeyboardFocusContainer () const |
| void | setWantsKeyboardFocus (bool wantsFocus) noexcept |
| bool | getWantsKeyboardFocus () const noexcept |
| void | setMouseClickGrabsKeyboardFocus (bool shouldGrabFocus) |
| bool | getMouseClickGrabsKeyboardFocus () const noexcept |
| void | grabKeyboardFocus () |
| void | giveAwayKeyboardFocus () |
| bool | hasKeyboardFocus (bool trueIfChildIsFocused) const |
| void | moveKeyboardFocusToSibling (bool moveToNext) |
| virtual std::unique_ptr< ComponentTraverser > | createFocusTraverser () |
| virtual std::unique_ptr< ComponentTraverser > | createKeyboardFocusTraverser () |
| void | setHasFocusOutline (bool hasFocusOutline) noexcept |
| bool | hasFocusOutline () const noexcept |
| bool | isEnabled () const noexcept |
| void | setEnabled (bool shouldBeEnabled) |
| virtual void | enablementChanged () |
| float | getAlpha () const noexcept |
| void | setAlpha (float newAlpha) |
| virtual void | alphaChanged () |
| void | setMouseCursor (const MouseCursor &cursorType) |
| virtual MouseCursor | getMouseCursor () |
| void | updateMouseCursor () const |
| virtual void | paintOverChildren (Graphics &g) |
| void | mouseMove (const MouseEvent &event) override |
| void | mouseEnter (const MouseEvent &event) override |
| void | mouseExit (const MouseEvent &event) override |
| void | mouseDoubleClick (const MouseEvent &event) override |
| void | mouseMagnify (const MouseEvent &event, float scaleFactor) override |
| void | setRepaintsOnMouseActivity (bool shouldRepaint) noexcept |
| void | addMouseListener (MouseListener *newListener, bool wantsEventsForAllNestedChildComponents) |
| void | removeMouseListener (MouseListener *listenerToRemove) |
| void | addKeyListener (KeyListener *newListener) |
| void | removeKeyListener (KeyListener *listenerToRemove) |
| virtual bool | keyStateChanged (bool isKeyDown) |
| virtual void | modifierKeysChanged (const ModifierKeys &modifiers) |
| virtual void | focusGained (FocusChangeType cause) |
| virtual void | focusLost (FocusChangeType cause) |
| virtual void | focusOfChildComponentChanged (FocusChangeType cause) |
| bool | isMouseOver (bool includeChildren=false) const |
| bool | isMouseButtonDown (bool includeChildren=false) const |
| bool | isMouseOverOrDragging (bool includeChildren=false) const |
| Point< int > | getMouseXYRelative () const |
| virtual void | moved () |
| virtual void | childBoundsChanged (Component *child) |
| virtual void | parentSizeChanged () |
| virtual void | broughtToFront () |
| void | addComponentListener (ComponentListener *newListener) |
| void | removeComponentListener (ComponentListener *listenerToRemove) |
| void | postCommandMessage (int commandId) |
| virtual void | handleCommandMessage (int commandId) |
| void | enterModalState (bool takeKeyboardFocus=true, ModalComponentManager::Callback *callback=nullptr, bool deleteWhenDismissed=false) |
| void | exitModalState (int returnValue) |
| bool | isCurrentlyModal (bool onlyConsiderForemostModalComponent=true) const noexcept |
| bool | isCurrentlyBlockedByAnotherModalComponent () const |
| virtual bool | canModalEventBeSentToComponent (const Component *targetComponent) |
| virtual void | inputAttemptWhenModal () |
| NamedValueSet & | getProperties () noexcept |
| const NamedValueSet & | getProperties () const noexcept |
| Colour | findColour (int colourID, bool inheritFromParent=false) const |
| void | setColour (int colourID, Colour newColour) |
| void | removeColour (int colourID) |
| bool | isColourSpecified (int colourID) const |
| void | copyAllExplicitColoursTo (Component &target) const |
| virtual void | colourChanged () |
| void * | getWindowHandle () const |
| Positioner * | getPositioner () const noexcept |
| void | setPositioner (Positioner *newPositioner) |
| void | setCachedComponentImage (CachedComponentImage *newCachedImage) |
| CachedComponentImage * | getCachedComponentImage () const noexcept |
| void | setViewportIgnoreDragFlag (bool ignoreDrag) noexcept |
| bool | getViewportIgnoreDragFlag () const noexcept |
| String | getTitle () const noexcept |
| void | setTitle (const String &newTitle) |
| String | getDescription () const noexcept |
| void | setDescription (const String &newDescription) |
| String | getHelpText () const noexcept |
| void | setHelpText (const String &newHelpText) |
| void | setAccessible (bool shouldBeAccessible) |
| bool | isAccessible () const noexcept |
| AccessibilityHandler * | getAccessibilityHandler () |
| void | invalidateAccessibilityHandler () |
| void | setFocusContainer (bool shouldBeFocusContainer) noexcept |
| void | contains (int, int)=delete |
| virtual | ~MouseListener ()=default |
| | AsyncUpdater () |
| virtual | ~AsyncUpdater () |
| void | triggerAsyncUpdate () |
| void | cancelPendingUpdate () noexcept |
| void | handleUpdateNowIfNeeded () |
| bool | isUpdatePending () const noexcept |
A scrollbar component.
To use a scrollbar, set up its total range using the setRangeLimits() method - this sets the range of values it can represent. Then you can use setCurrentRange() to change the position and size of the scrollbar's 'thumb'.
Registering a ScrollBar::Listener with the scrollbar will allow you to find out when the user moves it, and you can use the getCurrentRangeStart() to find out where they moved it to.
The scrollbar will adjust its own visibility according to whether its thumb size allows it to actually be scrolled.
For most purposes, it's probably easier to use a Viewport or ListBox instead of handling a scrollbar directly.
- See also
- ScrollBar::Listener
@tags{GUI}