Mit GtkScrolledWindow können Scrollbars realisiert werden.
GObject ⇒ GInitiallyUnowned ⇒ GtkObject ⇒ GtkWidget ⇒ GtkContainer ⇒ GtkBin
GtkAboutDialog
abgeleitete Widgets: - GtkBuildable
.Der Konstruktor verlangt 2 Argumente, üblicherweise wird beiden NULL übergeben:
GtkWidget *scrolled_win = gtk_scrolled_window_new (NULL, NULL);
Die beiden Argumente sind vom Typ GtkAdjustment
und regeln die Ausrichtung der Scrollbars in Relation zum Inhalt. NULL
überlässt GTK+ diese Aufgabe.
void gtk_scrolled_window_set_policy (GtkScrolledWindow *scrolled_window, GtkPolicyType hscrollbar_policy, GtkPolicyType vscrollbar_policy)
Nicht immer ist es erwünscht, dass eine Scrollbar angezeigt wird. Mit dieser Funktion kann das Verhalten von GtkScrolledWindow
bei übergroßem Inhalt festgelegt werden.
Folgende Möglichkeiten bietet GtkPolicyType
:
GTK_POLICY_NEVER | Wenn der Inhalt größer wird, wird keine Scrollbar angezeigt. Stattdessen wird der übergeordnete Container vergrößert, um Platz zu schaffen. |
GTK_POLICY_AUTOMATIC | Die Scrollbar wird nur angzeigt, wenn der Inhalt größer als der übergeordnete Container wird. |
GTK_POLICY_ALWAYS | Auch wenn der Inhalt kleiner als der übergeordnete Container ist, wird eine Scrollbar angezeigt. |
Über die Basisklasse GtkContainer
kann ein anderes Widget in das GtkScrolledWindow
gepackt werden:
gtk_container_add (GTK_CONTAINER (scrolled_window), other_widget);
Mehrere Elemente lassen sich in ein GtkScrolledWindow
packen, indem erst eine GtkBox
in das GtkScrolledWindow
gepackt wird.