GtkScrolledWindow {RGtk2} | R Documentation

## GtkScrolledWindow

### Description

Adds scrollbars to its child widget

### Methods and Functions

`gtkScrolledWindowNew(hadjustment = NULL, vadjustment = NULL, show = TRUE)`
`gtkScrolledWindowGetHadjustment(object)`
`gtkScrolledWindowGetVadjustment(object)`
`gtkScrolledWindowGetHscrollbar(object)`
`gtkScrolledWindowGetVscrollbar(object)`
`gtkScrolledWindowSetPolicy(object, hscrollbar.policy, vscrollbar.policy)`
`gtkScrolledWindowAddWithViewport(object, child)`
`gtkScrolledWindowSetPlacement(object, window.placement)`
`gtkScrolledWindowUnsetPlacement(object)`
`gtkScrolledWindowSetShadowType(object, type)`
`gtkScrolledWindowSetHadjustment(object, hadjustment)`
`gtkScrolledWindowSetVadjustment(object, hadjustment)`
`gtkScrolledWindowGetPlacement(object)`
`gtkScrolledWindowGetPolicy(object)`
`gtkScrolledWindowGetShadowType(object)`
`gtkScrolledWindow(hadjustment = NULL, vadjustment = NULL, show = TRUE)`

### Hierarchy

    GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkScrolledWindow

### Interfaces

GtkScrolledWindow implements AtkImplementorIface and `GtkBuildable`.

### Detailed Description

`GtkScrolledWindow` is a `GtkBin` subclass: it's a container the accepts a single child widget. `GtkScrolledWindow` adds scrollbars to the child widget and optionally draws a beveled frame around the child widget.

The scrolled window can work in two ways. Some widgets have native scrolling support; these widgets have "slots" for `GtkAdjustment` objects. PLEASE NOTE: The scrolled window installs `GtkAdjustment` objects in the child window's slots using the set_scroll_adjustments_signal, found in `GtkWidgetClass`. (Conceptually, these widgets implement a "Scrollable" interface; because GTK+ 1.2 lacked interface support in the object system, this interface is hackily implemented as a signal in `GtkWidgetClass`. The GTK+ 2.0 object system would allow a clean implementation, but it wasn't worth breaking the API.) Widgets with native scroll support include `GtkTreeView`, `GtkTextView`, and `GtkLayout`.

For widgets that lack native scrolling support, the `GtkViewport` widget acts as an adaptor class, implementing scrollability for child widgets that lack their own scrolling capabilities. Use `GtkViewport` to scroll child widgets such as `GtkTable`, `GtkBox`, and so on.

If a widget has native scrolling abilities, it can be added to the `GtkScrolledWindow` with `gtkContainerAdd`. If a widget does not, you must first add the widget to a `GtkViewport`, then add the `GtkViewport` to the scrolled window. The convenience function `gtkScrolledWindowAddWithViewport` does exactly this, so you can ignore the presence of the viewport.

The position of the scrollbars is controlled by the scroll adjustments. See `GtkAdjustment` for the fields in an adjustment - for `GtkScrollbar`, used by `GtkScrolledWindow`, the "value" field represents the position of the scrollbar, which must be between the "lower" field and "upper - page_size." The "page_size" field represents the size of the visible scrollable area. The "step_increment" and "page_increment" fields are used when the user asks to step down (using the small stepper arrows) or page down (using for example the PageDown key).

If a `GtkScrolledWindow` doesn't behave quite as you would like, or doesn't have exactly the right layout, it's very possible to set up your own scrolling with `GtkScrollbar` and for example a `GtkTable`.

### Structures

`GtkScrolledWindow`

  There are no public fields in the `GtkScrolledWindow` struct; it should only be accessed using the functions below.

### Convenient Construction

`gtkScrolledWindow` is the equivalent of `gtkScrolledWindowNew`.

### Signals

`move-focus-out(user.data)`

  undocumented

  `user.data`

    user data set when the signal handler was connected.

`scroll-child(user.data)`

  undocumented

  `user.data`

    user data set when the signal handler was connected.

### Properties

`hadjustment` [`GtkAdjustment` : * : Read / Write / Construct]

  The GtkAdjustment for the horizontal position.

`hscrollbar-policy` [`GtkPolicyType` : Read / Write]

  When the horizontal scrollbar is displayed. Default value: GTK_POLICY_ALWAYS

`shadow-type` [`GtkShadowType` : Read / Write]

  Style of bevel around the contents. Default value: GTK_SHADOW_NONE

`vadjustment` [`GtkAdjustment` : * : Read / Write / Construct]

  The GtkAdjustment for the vertical position.

`vscrollbar-policy` [`GtkPolicyType` : Read / Write]

  When the vertical scrollbar is displayed. Default value: GTK_POLICY_ALWAYS

`window-placement` [`GtkCornerType` : Read / Write]

  Where the contents are located with respect to the scrollbars. This property only takes effect if "window-placement-set" is TRUE. Default value: GTK_CORNER_TOP_LEFT

`window-placement-set` [logical : Read / Write]

  Whether "window-placement" should be used to determine the location of the contents with respect to the scrollbars. Otherwise, the "gtk-scrolled-window-placement" setting is used. Default value: FALSE Since 2.10

### Style Properties

`scrollbar-spacing` [integer : Read]

  Number of pixels between the scrollbars and the scrolled window. Allowed values: >= 0 Default value: 3

`scrollbars-within-bevel` [logical : Read]

  Whether to place scrollbars within the scrolled window's bevel. Default value: FALSE Since 2.12

### Author(s)

Derived by RGtkGen from GTK+ documentation

### References

https://developer.gnome.org/gtk2/stable/GtkScrolledWindow.html

### See Also

`GtkViewport` `GtkAdjustment` `GtkWidgetClass`

[Package RGtk2 version 2.20.36.3 Index]