一般很少直接使用视角(Viewport)构件。多数情况下是使用滚动窗口构件,它内部使用了视角。
视角构件允许在其中放置一个超过自身大小的构件,这样你可以一次看构件的一部分。它用调整对象定义当前显示的区域。
用下面的函数创建一个视角。
GtkWidget *gtk_viewport_new( GtkAdjustment *hadjustment, GtkAdjustment *vadjustment ); |
可以看到,创建构件时能够指定构件使用的水平和垂直调整对象。如果给函数传递 NULL 参数,构件会自己创建调整对象。
创建构件后,可以用下面四个函数取得和设置它的调整对象:
GtkAdjustment *gtk_viewport_get_hadjustment (GtkViewport *viewport ); GtkAdjustment *gtk_viewport_get_vadjustment (GtkViewport *viewport ); void gtk_viewport_set_hadjustment( GtkViewport *viewport, GtkAdjustment *adjustment ); void gtk_viewport_set_vadjustment( GtkViewport *viewport, GtkAdjustment *adjustment ); |
剩下的这个函数用于改变视角的外观:
void gtk_viewport_set_shadow_type( GtkViewport *viewport, GtkShadowType type ); |
type参数可以取以下值:
GTK_SHADOW_NONE, GTK_SHADOW_IN, GTK_SHADOW_OUT, GTK_SHADOW_ETCHED_IN, GTK_SHADOW_ETCHED_OUT |