GTK 滚动窗口构件(GtkScrolledWindow)
2015-12-30 11:24
405 查看
一、滚动窗口构件
滚动窗口构件(GtkScrolledWindow)用于创建一个可滚动区域,并将其他构件放入其中。可以在滚动窗口中插入任何其他构件,在其内部的构件不论尺寸大小都可以通过滚动条访问到。
1.
名称::
gtk_scrolled_window_new
功能:
创建滚动窗口构件
函数原形:
GtkWidget *gtk_scrolled_window_new( GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment );
参数: hadjustment vadjustment
返回值: 新的滚动窗口构件
第一个参数是水平方向的调整对象,第二个参数是垂直方向的调整对象。它们总是设置为NULL。
2.
名称::
gtk_scrolled_window_set_policy
功能:
设置滚动条出现的方式
函数原形:
void gtk_scrolled_window_set_policy( GtkScrolledWindow *scrooled_window, GtkPolicyType hscrollbar_policy, GtkPolicyType vscrollbar_policy );
参数:
hscrollbar_policy 水平滚动条出现的方式
vscrollbar_policy 垂直滚动条的方式
返回值: 无
滚动条的方式取值可以为GTK_POLICY_AUTOMATIC或GTK_POLICY_ALWAYS。当要求滚动条根据需要自动出现时,可设为GTK_POLICY_AUTOMATIC;若设为GTK_POLICY_ALWAYS,滚动条会一直出现在滚动窗口构件上。
3.
名称::
gtk_scrolled_window_add_with_viewport
功能:
将子构件添加到滚动窗口构件
函数原形:
void gtk_scrolled_window_add_with_viewport(GtkScrolledWindow *scrolled_window, GtkWidget *child);
参数: scrolled_window 滚动窗口构件 child 子构件
返回值: 无
---------------------------------------------------------------------------------
下面是滚动窗口构件的程序例子:
#include
int main(int argc,char *argv[ ])
{
GtkWidget *window;
GtkWidget *scrolled;
GtkWidget *text;
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window,200,200);
gtk_signal_connect(GTK_OBJECT(window),”destroy”,G_CALLBACK(gtk_main_quit),NULL);
scrolled=gtk_scrolled_window_new(NULL,NULL); /*创建滚动窗口构件*/
gtk_container_add(GTK_CONTAINER(window),scrolled);/*将滚动窗口构件加入窗体*/
gtk_widget_show(scrolled);/*显示滚动窗口构件*/
text=gtk_text_view_new();/*创建文本视图构件*/
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled),text);/*将文本视图构件加入滚动窗口*/
gtk_widget_show(text);
gtk_widget_show(window);
gtk_main();
}
滚动窗口构件(GtkScrolledWindow)用于创建一个可滚动区域,并将其他构件放入其中。可以在滚动窗口中插入任何其他构件,在其内部的构件不论尺寸大小都可以通过滚动条访问到。
1.
名称::
gtk_scrolled_window_new
功能:
创建滚动窗口构件
函数原形:
GtkWidget *gtk_scrolled_window_new( GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment );
参数: hadjustment vadjustment
返回值: 新的滚动窗口构件
第一个参数是水平方向的调整对象,第二个参数是垂直方向的调整对象。它们总是设置为NULL。
2.
名称::
gtk_scrolled_window_set_policy
功能:
设置滚动条出现的方式
函数原形:
void gtk_scrolled_window_set_policy( GtkScrolledWindow *scrooled_window, GtkPolicyType hscrollbar_policy, GtkPolicyType vscrollbar_policy );
参数:
hscrollbar_policy 水平滚动条出现的方式
vscrollbar_policy 垂直滚动条的方式
返回值: 无
滚动条的方式取值可以为GTK_POLICY_AUTOMATIC或GTK_POLICY_ALWAYS。当要求滚动条根据需要自动出现时,可设为GTK_POLICY_AUTOMATIC;若设为GTK_POLICY_ALWAYS,滚动条会一直出现在滚动窗口构件上。
3.
名称::
gtk_scrolled_window_add_with_viewport
功能:
将子构件添加到滚动窗口构件
函数原形:
void gtk_scrolled_window_add_with_viewport(GtkScrolledWindow *scrolled_window, GtkWidget *child);
参数: scrolled_window 滚动窗口构件 child 子构件
返回值: 无
---------------------------------------------------------------------------------
下面是滚动窗口构件的程序例子:
#include
int main(int argc,char *argv[ ])
{
GtkWidget *window;
GtkWidget *scrolled;
GtkWidget *text;
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window,200,200);
gtk_signal_connect(GTK_OBJECT(window),”destroy”,G_CALLBACK(gtk_main_quit),NULL);
scrolled=gtk_scrolled_window_new(NULL,NULL); /*创建滚动窗口构件*/
gtk_container_add(GTK_CONTAINER(window),scrolled);/*将滚动窗口构件加入窗体*/
gtk_widget_show(scrolled);/*显示滚动窗口构件*/
text=gtk_text_view_new();/*创建文本视图构件*/
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled),text);/*将文本视图构件加入滚动窗口*/
gtk_widget_show(text);
gtk_widget_show(window);
gtk_main();
}
相关文章推荐
- Centos搭建GTK+Codeblock完整版
- linux下的图形界面扫雷游戏(Gtk+2.0)
- gdk模拟鼠标按键事件/焦点事件
- GTK常规问题解答
- 【cocostudio】如何解决2.0版本打不开的问题
- 构建 C++ 开发环境包括 gtk、qt 等开发库
- PHP+Gtk实例(求24点)
- GtkMessageDialog
- centos6.2运行ibm install manager 报错libswt-pi-gtk-4234.so
- ubuntu -karmic Koala 下安装 VBox
- 限制entry控件的可COPY等操作
- 去掉标题栏显示
- Secure CRT 乱码 问题
- 学习的瓶颈
- 网络嗅探的原因
- 从源码编译安装软件经验 gtk
- GTK+的安装
- Ubuntu14.04上安装gtk
- CentOS 6.0中安装GTK+2.0
- [转载]mono几经改进,终支持WinForm开发