glade 使用指南(2)

原创 2007年10月12日 21:53:00
上次我们已经知道了glade的基本使用方法了,现在我们用他来做点有用的事

先让我们在上次建的window1中加点东西,
首先是一个vertical box,如图:


然后是一个label,如图:

之后再建个horizontal box,如图:

而后来两个button,如图:


更改button和label的label、Border width、Padding、width、height、X pad,Y pad等位置参数,
如果你改过名字的话,下面的程序中调用的参数会有点变化。
自我感觉良好后,保存。大致如图:



接下来的比较的关键部分了,我们造好了外表,现在要处理内在了。
添加几个signal后保存,如下图:
window1



count+1 button



quit  button



让我们添加几个函数到原来的程序中去
glade.c

  1 #include <glade/glade.h>
  2 #include <gtk/gtk.h>
  3
  4 static int count;
  5
  6 /*when we click the button ,we make count add one ,
  7  *and show the answer on the label
  8  */
  9 void on_button1_clicked(gpointer userdata)
 10 {
 11     gchar buf[16];
 12     snprintf(buf,16,"%d",++count);
 13
 14     printf("%s/n",buf);
 15     gtk_label_set_label(GTK_LABEL(userdata),buf);
 16 }
 17
 18 /*when click the button quit,we wuit*/
 19 void on_button2_clicked(GtkButton *button, gpointer userdate)
 20 {
 21     gtk_main_quit();
 22 }
 23
 24 int main(int argc, char **argv)
 25 {
 26
 27     GladeXML *window;
 28
 29     gtk_init(&argc, &argv);
 30
 31     window=glade_xml_new("project6.glade",NULL,NULL);
 32
 33     glade_xml_signal_autoconnect(window);
 34
 35     gtk_main();
 36
 37     return 0;
 38 }

有人一定奇怪最后没有函数调用就实现了那上面的两个signal都能用
libglade的文档上是这么说的
The some_signal_handler_func function is not referenced anywhere in the program explicitely, but if any signals are defined in the interface description that use "some_signal_handler_func" as the handler name, then this function will automatically be connected.
可见是glade_xml_signal_autoconnect解决了这个问题。

下面让我们重复之前的步骤编译下
gcc -o window glade.c `pkg-config --libs --cflags libglade-2.0` -export-dynamic
如果更正出现的问题,接着./window
点击击上面的button测试下,没问题?很好。
有问题,那么核对你的signal设置,必要时适当调整下button1的signal函数

good luck

一步一步学习Glade

Glade是GTK+的界面辅助设计工具,可以通过拖放控件的方式快速设计出用户界面,这样的优势在于在设计的同时能直观地看到界面上的控件,并且可以随时调整界面上的设计。 由于开发板的库版...
  • lihuibo128
  • lihuibo128
  • 2014年08月27日 15:53
  • 1184

GTK入门学习:glade的使用

搭建好环境后,在终端敲 glade 即可启动glade工具。 glade的整体框图: 常用控件选择区:列举了常用的控件,常用的有三类:顶层(主窗口等),...
  • lianghe_work
  • lianghe_work
  • 2015年07月27日 15:00
  • 2427

GLADE3教程(一)

看本教程请先自觉看点gtk基础。   本教程是基于windows下用code::blocks编写的   glade3 3.6.7下载地址:http://www.bailangcn.tk/up/sof...
  • xfcy1990
  • xfcy1990
  • 2016年05月18日 23:24
  • 497

glade使用与GTK+学习初步

1.使用glade进行绘制UI 2.将形成的文件另存为,chongmingming
  • hellobeifeng
  • hellobeifeng
  • 2014年08月21日 09:52
  • 2131

linux gtk 界面设计工具:glade简介

http://www.turbolinux.com.cn/turbo/wiki/doku.php?id=%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%80:glade%E7%A8...
  • beckdon
  • beckdon
  • 2013年09月03日 11:05
  • 1951

GTK+浅谈之十四Glade使用

Glade是一种开发GTK+应用程序的RAD(Rapid Application Development)工具。Glade自身就是一个GTK+应用程序,因为它就是用GTK+ 开发出来的,Glade用来...
  • taiyang1987912
  • taiyang1987912
  • 2015年10月10日 13:03
  • 990

Windows平台下Glade+GTK开发环境的搭建

【@.1 MVVM设计模式与Glade】 做上层软件开发的程序员可能对于MVVM模式比较熟悉,这是一种经典的软件设计模式,很好的将用户界面与后台处理之间分层开,通过属性、事件绑定这种统一的"接口"将...
  • dyllove98
  • dyllove98
  • 2013年06月02日 17:52
  • 3490

Ubuntu下安装GTK+及Glade开发C应用界面

linux系统Ubuntu下安装GTK+及Glade开发C应用界面GTK+是在一系列的函数库基础上建立的,所以在安装GTK+函数库前,首先要将其依赖的函数库安装。...
  • shangguanyunlan
  • shangguanyunlan
  • 2016年05月20日 22:05
  • 2312

GTK入门学习:glade的环境搭建

1) Linux环境搭建 2)windows版本环境搭建
  • tennysonsky
  • tennysonsky
  • 2015年01月22日 14:45
  • 1286

Ubuntu下用glade和GTK+开发C语言界面程序(二)——gcc常用命令介绍

谈到linux,没人不懂gcc,当然,学过C语言的都该知道gcc,毕竟所有的类C编译器基本都有gcc来构成。 GCC的意思随着时间的发展也从最初的GNU C Compiler发展到GNU Compi...
  • u013599970
  • u013599970
  • 2014年08月30日 19:54
  • 1616
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:glade 使用指南(2)
举报原因:
原因补充:

(最多只允许输入30个字)