Seitenleiste

GtkContainer

GtkContainer

Eine Basisklasse für alle Widgets, die andere Widgets enthalten können.

Allgemeine Informationen

  • Basisklassen:
    GObject ⇒ GInitiallyUnowned ⇒ GtkObject ⇒ GtkWidget
  • Von GtkContainer abgeleitete Widgets: GtkBin, GtkBox, GtkCList, GtkFixed, GtkPaned, GtkIconView, GtkLayout, GtkList, GtkMenuShell, GtkNotebook, GtkSocket, GtkTable, GtkTextView, GtkToolbar, GtkToolItemGroup, GtkToolPalette, GtkTree, GtkTreeView
  • Anmerkungen: Implementiert GtkBuildable.
  • Referenz: GtkContainer

Beispiel

GtkContainer ist als Klasse abstrakt. Das folgende Beispiel benutzt das GtkWindow, welches GtkContainer implementiert.

#include <gtk/gtk.h>
 
int main (int argc, char *argv[])
{
    GtkWidget *window,
              *button;
 
    gtk_init (&argc, &argv);
 
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
 
    button = gtk_button_new_with_label ("GtkButton in einem GtkContainer");
    gtk_container_add (GTK_CONTAINER (window), button);
    gtk_container_set_border_width (GTK_CONTAINER (window), 20);
 
    gtk_widget_show_all (window);
    gtk_main ();
 
    return 0;
}

Wichtige Funktionen

gtk_container_add

void gtk_container_add (GtkContainer *container, GtkWidget *widget);


Packt widget in den Container. Diese Funktion ruft die Packfunktion der GtkContainer-Implementierung mit Standardparametern auf. Für einfache Container wie GtkBin ist diese Funktion zu nutzen, für komplexere Container wie GtkBox oder GtkTable sollte die spezialisierte Packfunktion der jeweiligen Implementierung genutzt werden.

  • container: Ein GtkContainer
  • widget: Das einzufügende GtkWidget

gtk_container_remove

void gtk_container_remove (GtkContainer *container, GtkWidget *widget);


Entfernt widget aus container.

  • container: Ein GtkContainer
  • widget: Das aus dem GtkContainer zu entfernende GtkWidget

gtk_container_set_border_width

void gtk_container_set_border_width (GtkContainer *container, guint border_width);


Setzt den Rand um den GtkContainer herum in Pixeln.

  • container: Ein GtkContainer
  • border_width: Die Breite des Randes in Pixeln