Advertisement

GTK相关函数知识

阅读量:

检查宏

gtk编程中有很多宏,一般都是类型检查作用。如G_OBJECT,GTK_WINDOW,等等。

gtk_init()

初始化gtk参数。

复制代码
    gtk_init (&argc,&argv);

gtk_main()

gtk的循环函数,一直等待signal的到来,并处理:

复制代码
    gtk_main ();

gtk_main_quit()

退出gtk_main()

复制代码
    gtk_main_quit();

gtk_window_new()

这个函数每个gtk程序都需要,画一个window,这是最顶层的widget。

复制代码
    GtkWidget *window;window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

gtk_window_set_title()

设置窗口标题

复制代码
    gtk_window_set_title (GTK_WINDOW (window),"Hello Test!");

GTK_WINDOW是一个宏,负责检查window个的类型。window是用gtk_window_new创建的一个GtkWidget。

g_signal_connect()

信号处理函数,通过链接一个信号到一个回调函数,GTK可以完成用户的请求。

复制代码
    g_signal_connect (G_OBJECT (window),"delete_event",                  G_CALLBACK (delete_event),NULL);

这里将窗口的delete-event信号(通常是窗口管理器接受到用户点击关闭图标产生的窗口注销信号),链接到window上(window一般都是gtk_window_new创建的)。当有信号到到达是,执行delete_event回调函数。并把NULL传递给delete_event作为参数。

gtk_container_set_border_width()

设置container(包容器)的边框,

复制代码
    gtk_container_set_border_width (GTK_CONTAINER (window),10);

gtk_hbox_new()和gtk_vbox_new()

一个创建横向盒子(一种包容器),一个创建纵向盒子。

复制代码
    GtkWidget *box;box = gtk_hbox_new (FALSE,0);

gtk_button_new_with_label()

创建一个带标签的按钮。

复制代码
    GtkWidget *button;button = gtk_button_new_with_label ("按钮1");

gtk_container_add()

向一个container里添加一个Widget

复制代码
    gtk_container_add (GTK_CONTAINER (window),box)

gtk_box_pack_start()

box的封装

复制代码
    gtk_box_pack_start (GTK_BOX (box),button,TRUE,TRUE,0);

gtk_widget_show()

显示一个Widget

复制代码
    gtk_widget_show (button);gtk_widget_show (window);

gtk_widget_set_size_request()

设置一个widget大小

复制代码
    gtk_widget_set_size_request (clutter_widget, 200, 200);

全部评论 (0)

还没有任何评论哟~