====== 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]]**