鱼C论坛

 找回密码
 立即注册
查看: 2174|回复: 1

[技术交流] C语言GUI程序设计-GTK图文系列-工具栏

[复制链接]
发表于 2014-11-12 21:10:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这一讲来讲解GTK中的工具栏GtkToolBar

先来看下效果:
gtk_toolbar.png


例程:
#include <gtk/gtk.h>

void open_click(GtkToolButton *toolbutton,gpointer user_data)
{
    g_print("open\n");
}
int main(int argc,char *argv[ ])
{
    GtkWidget *window;
    GtkWidget *toolbar;
    GtkToolItem *tool_item1,*tool_item2,*tool_item_separtor;

    gtk_init(&argc,&argv);
    window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title(GTK_WINDOW(window),"hello fishc - GtkToolBar");

    toolbar = gtk_toolbar_new();
    tool_item1 = gtk_tool_button_new_from_stock(GTK_STOCK_OPEN);
    tool_item2 = gtk_tool_button_new_from_stock(GTK_STOCK_COPY);
    g_signal_connect(GTK_WIDGET(tool_item1),"clicked",open_click,NULL);
    tool_item_separtor = gtk_separator_tool_item_new();

    gtk_toolbar_insert(toolbar,tool_item1,0);
    gtk_toolbar_insert(toolbar,tool_item_separtor,1);
    gtk_toolbar_insert(toolbar,tool_item2,2);

    gtk_container_add(GTK_CONTAINER(window), toolbar);
    gtk_widget_show_all(window);
    gtk_main();
}
工具栏的使用比较简单,主要是新建一个GtkToolBar,然后新建几个GtkToolItem添加进去即可。
GtkToolBar类似于上一节的GtkMenuBar,都是用来承载子项的栏。

主要用到的函数:
gtk_tool_button_new_with_stock
这个函数是用来新建一个GtkToolItem的,这里的item类型为button,参数为stockid,stockid为GTK中定义的一系列字符串常量,其功能是用来标识一些预定义的常用图标。
例如GTK_STOCK_ADD就是这个图标: gtk_stock_add.png ,这样初始化工具栏按钮就显示了预置的图标了。

接下来我们可以添加另一个常用的GtkToolItem,它就是分隔符(GtkSeparatorToolItem),如上图中的那条竖线。

最后注册GtkToolItem的clicked信号获取点击通知,就可以处理工具栏按钮的点击操作了。

这个简单的部件就说到这里,下一讲讲解GTK中的显示部件。



本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-12 21:32:21 | 显示全部楼层
支持楼主!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 18:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表