## GtkScrollbar GtkScrollbar — A Scrollbar |

## Functions

GtkWidget * | gtk_scrollbar_new ()
GtkAdjustment * | gtk_scrollbar_get_adjustment ()
void | gtk_scrollbar_set_adjustment ()

## Properties

GtkAdjustment * | adjustment | Read / Write / Construct

## Types and Values

| GtkScrollbar

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkScrollbar

## Implemented Interfaces

GtkScrollbar implements GtkAccessible, GtkBuildable, GtkConstraintTarget and GtkOrientable.

## Includes

    #include <gtk/gtk.h>

## Description

The GtkScrollbar widget is a horizontal or vertical scrollbar, depending on the value of the “orientation” property.

Its position and movement are controlled by the adjustment that is passed to or created by `gtk_scrollbar_new()`. See GtkAdjustment for more details. The “value” field sets the position of the thumb and must be between “lower” and “upper” - “page-size”. The “page-size” represents the size of the visible scrollable area. The fields “step-increment” and “page-increment” fields are added to or subtracted from the “value” when the user asks to move by a step (using e.g. the cursor arrow keys) or by a page (using e.g. the Page Down/Up keys).

### CSS nodes

    1
    2
    3
    4
    scrollbar
    ╰── range[.fine-tune]
        ╰── trough
            ╰── slider

GtkScrollbar has a main CSS node with name scrollbar and a subnode for its contents. The main node gets the .horizontal or .vertical style classes applied, depending on the scrollbar's orientation.

The range node gets the style class .fine-tune added when the scrollbar is in 'fine-tuning' mode.

Other style classes that may be added to scrollbars inside GtkScrolledWindow include the positional classes (.left, .right, .top, .bottom) and style classes related to overlay scrolling (.overlay-indicator, .dragging, .hovering).

### Accessibility

GtkScrollbar uses the GTK_ACCESSIBLE_ROLE_SCROLLBAR role.

## Functions

### gtk_scrollbar_new ()

    GtkWidget *
    gtk_scrollbar_new (GtkOrientation orientation,
                       GtkAdjustment *adjustment);

Creates a new scrollbar with the given orientation.

#### Parameters

orientation | the scrollbar’s orientation. |
adjustment | the GtkAdjustment to use, or `NULL` to create a new adjustment. | [allow-none]

#### Returns

the new GtkScrollbar.

### gtk_scrollbar_get_adjustment ()

    GtkAdjustment *
    gtk_scrollbar_get_adjustment (GtkScrollbar *self);

Returns the scrollbar's adjustment.

#### Parameters

self | a GtkScrollbar |

#### Returns

the scrollbar's adjustment.

[transfer none]

### gtk_scrollbar_set_adjustment ()

    void
    gtk_scrollbar_set_adjustment (GtkScrollbar *self,
                                  GtkAdjustment *adjustment);

Makes the scrollbar use the given adjustment.

#### Parameters

self | a GtkScrollbar |
adjustment | the adjustment to set. | [nullable]

## Types and Values

### GtkScrollbar

    typedef struct _GtkScrollbar GtkScrollbar;

## Property Details

### The `“adjustment”` property

      “adjustment”               GtkAdjustment *

The GtkAdjustment that contains the current value of this scrollbar.

Owner: GtkScrollbar

Flags: Read / Write / Construct

## See Also

GtkAdjustment, GtkScrolledWindow