## GtkVBox

GtkVBox — A vertical container box

## Synopsis

    #include <gtk/gtk.h>

    struct              GtkVBox;
    GtkWidget *         gtk_vbox_new                        (gboolean homogeneous,
                                                             gint spacing);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBox
                               +----GtkVBox

## Implemented Interfaces

GtkVBox implements AtkImplementorIface, GtkBuildable and GtkOrientable.

## Description

A GtkVBox is a container that organizes child widgets into a single column.

Use the GtkBox packing interface to determine the arrangement, spacing, height, and alignment of GtkVBox children.

All children are allocated the same width.

GtkVBox has been deprecated. You can use GtkBox instead, which is a very quick and easy change. If you have derived your own classes from GtkVBox, you can simply change the inheritance to derive directly from GtkBox, and set the "orientation" property to `GTK_ORIENTATION_VERTICAL` in your instance init function, with a call like:

    1
    2

    gtk_orientable_set_orientation (GTK_ORIENTABLE (object),
                                    GTK_ORIENTATION_VERTICAL);

If you don't need first-child or last-child styling and want your code to be future-proof, the recommendation is to switch to GtkGrid instead of nested boxes. For more information about migrating to GtkGrid, see Migrating from other containers to GtkGrid.

## Details

### struct GtkVBox

    struct GtkVBox;

### gtk_vbox_new ()

    GtkWidget *         gtk_vbox_new                        (gboolean homogeneous,
                                                             gint spacing);

### Warning

`gtk_vbox_new` has been deprecated since version 3.2 and should not be used in newly-written code. You can use `gtk_box_new()` with `GTK_ORIENTATION_VERTICAL` instead, which is a quick and easy change. But the recommendation is to switch to GtkGrid, since GtkBox is going to go away eventually. See Migrating from other containers to GtkGrid.

Creates a new GtkVBox.

`homogeneous` : | `TRUE` if all children are to be given equal space allotments.
`spacing` : | the number of pixels to place by default between children.
Returns : | a new GtkVBox.

## See Also

GtkHBox