GtkHBox — A horizontal container box


Types and Values

struct GtkHBox

Object Hierarchy

    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBox
                    ╰── GtkHBox

Implemented Interfaces

GtkHBox implements AtkImplementorIface, GtkBuildable and GtkOrientable.


#include <gtk/gtk.h>


GtkHBox is a container that organizes child widgets into a single row.

Use the GtkBox packing interface to determine the arrangement, spacing, width, and alignment of GtkHBox children.

All children are allocated the same height.

GtkHBox has been deprecated. You can use GtkBox instead, which is a very quick and easy change. If you have derived your own classes from GtkHBox, you can simply change the inheritance to derive directly from GtkBox. No further changes are needed, since the default value of the “orientation” property is GTK_ORIENTATION_HORIZONTAL. 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.


gtk_hbox_new ()

GtkWidget *
gtk_hbox_new (gboolean homogeneous,
              gint spacing);

gtk_hbox_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_HORIZONTAL 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 GtkHBox.



TRUE if all children are to be given equal space allotments.



the number of pixels to place by default between children.



a new GtkHBox.

Types and Values

struct GtkHBox

struct GtkHBox;

See Also