====== GtkContainer ====== {{ :gui:gtk:widgets:container.png?200|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:** [[http://library.gnome.org/devel/gtk/stable/GtkContainer.html|GtkContainer]] ===== Beispiel ===== ''GtkContainer'' ist als Klasse abstrakt. Das folgende Beispiel benutzt das ''GtkWindow'', welches ''GtkContainer'' implementiert. #include 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 [[gui:gtk:widgets:bin|GtkBin]] ist diese Funktion zu nutzen, für komplexere Container wie [[gui:gtk:widgets:box|GtkBox]] oder [[gui:gtk:widgets:table|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 ====== ====== ----- **[[gui:gtk:widgets:start|Hoch zur Übersicht]]**