谈到glade,各位一定不陌生,我这样的人在这里谈论如何使用,实在是大有班门弄斧的感觉,还请各位多多指教。
前一段时间在solaris下开发一个界面基于gtk+的软件,当然纯粹是抱着玩玩的心情去搞的。用了一下glade发现还是很好用的,可惜网上关于这方面的资料不是很>多。无论是官方的,还是各个其他网站,关于他的使用方面的资料不是很多。官网上虽然也提供了相应的例子,但是代码都太长了,很难让人一下子就找到方向。>希望这几篇文章能对想很快入门的人有所帮助。
Glade是一款通过使用gnome和gtk+库帮助你创建GUI的应用软件,你可以通过它生成你所创建的GUI的C、C++、Ada的源代码;同样你也可以联合使用libglade和glade生成的xml文件来创建你的gui。
正如前面讲得我们可以生成源代码也可以直接使用生成的文件。
这里我们只将如何使用联合使用libglade和xml文件(即.glade文件)
Start
现在让我们开始我们的工程。
Create a GUI
首先创建一个gtk+工程,建立一个简单的窗口后保存(我们先不做任何其他操作):
![](http://p.blog.csdn.net/images/p_blog_csdn_net/yao_zhuang/339456/o_window1.png)
Write Code
在同一个project的文件夹下写个相应的C程序,程序名字window.c。
程序如下:
1 #include <glade/glade.h>
2 #include <gtk/gtk.h>
3
4 int main(int argc, char **argv)
5 {
6
7 GladeXML *window;
8
9 gtk_init(&argc, &argv);
10
11 window=glade_xml_new("project6.glade",NULL,NULL);
12
13 glade_xml_signal_autoconnect(window);
14
15 gtk_main();
16
17 return 0;
18 }
line 9 初始化gtk
line 11 载入glade文件中的接口,根据相应的需求做不同的改变,详情参看libglade的文档
line 13 连接相应的signal
line 15 开始gtk主循环
Compile
我们已经写了相应的c程序,接下来就是编译了
你可写相应的makefile,不过这里由于程序相对比较小,没必要了。
使用命令gcc `pkg-config --libs --cflags libglade-2.0` -o window glade.c -export-dynamic
注意具体的动态连接参数使ld而定,这里是-export-dynamic。详情参看ld的manual。
Finished
ok,我们现在已经完成了这个几乎没有任何程序了,run it。
接下来该做点有意义的事了。
前一段时间在solaris下开发一个界面基于gtk+的软件,当然纯粹是抱着玩玩的心情去搞的。用了一下glade发现还是很好用的,可惜网上关于这方面的资料不是很>多。无论是官方的,还是各个其他网站,关于他的使用方面的资料不是很多。官网上虽然也提供了相应的例子,但是代码都太长了,很难让人一下子就找到方向。>希望这几篇文章能对想很快入门的人有所帮助。
Glade是一款通过使用gnome和gtk+库帮助你创建GUI的应用软件,你可以通过它生成你所创建的GUI的C、C++、Ada的源代码;同样你也可以联合使用libglade和glade生成的xml文件来创建你的gui。
正如前面讲得我们可以生成源代码也可以直接使用生成的文件。
这里我们只将如何使用联合使用libglade和xml文件(即.glade文件)
Start
现在让我们开始我们的工程。
Create a GUI
首先创建一个gtk+工程,建立一个简单的窗口后保存(我们先不做任何其他操作):
![](http://p.blog.csdn.net/images/p_blog_csdn_net/yao_zhuang/339456/o_window1.png)
Write Code
在同一个project的文件夹下写个相应的C程序,程序名字window.c。
程序如下:
1 #include <glade/glade.h>
2 #include <gtk/gtk.h>
3
4 int main(int argc, char **argv)
5 {
6
7 GladeXML *window;
8
9 gtk_init(&argc, &argv);
10
11 window=glade_xml_new("project6.glade",NULL,NULL);
12
13 glade_xml_signal_autoconnect(window);
14
15 gtk_main();
16
17 return 0;
18 }
line 9 初始化gtk
line 11 载入glade文件中的接口,根据相应的需求做不同的改变,详情参看libglade的文档
line 13 连接相应的signal
line 15 开始gtk主循环
Compile
我们已经写了相应的c程序,接下来就是编译了
你可写相应的makefile,不过这里由于程序相对比较小,没必要了。
使用命令gcc `pkg-config --libs --cflags libglade-2.0` -o window glade.c -export-dynamic
注意具体的动态连接参数使ld而定,这里是-export-dynamic。详情参看ld的manual。
Finished
ok,我们现在已经完成了这个几乎没有任何程序了,run it。
接下来该做点有意义的事了。