Glade是针对GTK+工具箱与GNOME桌面开发环境的快速图形界面开发工具.用Glade设计的用户接口以XML的文件形式保存,然后根据需要由程序通过libglade库文件来动态加载.因为使用了libglade库,Glade XML文件能够被C,C++,Java,Perl,Python,C#等等语言所支持.针对其他未涉及的语言的支持也是方便的.

在网上可以见到某些关于Glade的教程,大都是关于Linux平台和Glade 2的,因为原先Glade作为快速开发工具,集成代码生成功能,生成C文件.所以常常有初学者对网上某些教程所提及的"generate"(生成代码)功能表示迷惑,在新版本的Glade-3上找不到对应的功能.

新版本的Glade-3是对原先Glade代码的完全重写.一个显著的变化就是去除了代码生成功能.这样做是有原因的,即然代码生成功能不被提倡使用,而是更鼓励使用libglade功能.但是如果你真需要代码生成功能的话,它还是可以做为插件来提供的.另一个显著的不同是glade-3设计用来最大化使用GObject的自省机制(GObject introspection),来使外部工具箱和部件的控制,信号和属性的集成更加容易.

如果看过Say Hello to GTK+的话,可能感觉那样的窗体程序太简单了.那么现在让我们借助Glade弄点儿复杂一点儿的界面吧.首先来瞧瞧Glade长什么样,下图就是Glade在windows下的界面.左边的窗体的小部件选择器,相当于调色板.中间是主菜单,右边的是属性窗体.

现在开始创建一个类似于文本编辑器的图形界面.按照上图标注的顺序,依次添加window部件,vertical box部件,menu bar部件,text view部件和Status部件.vertical box设置三行,它是用来进行界面布局,分割空间用,这是gtk+设计与传统的windows UI设计很不同的地方.后三个部件是放置vertical box中的,最后设计完成图形如下.保存取名为win.glade.如果你感兴趣的话,可以用文件编辑器打开这个文件看看,正如所说的那样,它是一个xml格式的文本文件.

现在我们设置相关的头文件和库文件,编辑一个glade.c文件,添加进以下的代码,运行看看,会出现如上图的对话框.虽然这个对话框什么都不干,但是通过Glade,我们能较为容易地设计界面,而不用通过gtk函数,一个一个将控件实现.

#include

#include

int main(int argc, char* argv[])

{

GladeXML *gxml;

GtkWidget *window;

gtk_init (&argc, &argv);

gxml = glade_xml_new ("win.glade", NULL, NULL);

window = glade_xml_get_widget (gxml, "hello");

g_object_unref (G_OBJECT (gxml));

gtk_widget_show (window);

gtk_main ();

return 0;

}

posted on 2008-03-27 20:49 len 阅读(9678) 评论(8)  编辑 收藏 引用 所属分类: 程序开发

glade java_Say Hello to Glade相关推荐

  1. c语言和gtk实现的游戏,Ubuntu下用glade和GTK+开发C语言界面程序(一)

    前言:对于大学中计算机系的每年暑假的课设有太多想说的,能从中学到非常多东西,当然不排除打酱油的,这些能够掠过哦,凡事都打酱油.人生也是打酱油的吧. 2333. 对于大三曾经的课设一般的要求都是用C写的 ...

  2. Linux下GUI开发:GTK+ 2.0 + anjuta + glade

    Linux下GUI开发:GTK+ 2.0 + anjuta + glade 1. 大家一起用gtk编程(一个序列) http://bbs.chinaunix.net/viewthread.php?ti ...

  3. Glade+GTK+ 实现通讯录信息管理系统图形界面软件开发

    Glade+GTK+ 实现通讯录管理系统图形界面软件开发 开发环境 前期准备 开发环境配置 软件功能要求 软件开发过程 数据结构设计 链表函数编写 数据处理函数 软件开发设计 系统初始化界面窗口 &q ...

  4. Glade的简单使用说明+例子(一)

    Glade 的简单使用说明+例子 Gnome 下已开发出了Glade这一应用软件,它是传统界面设计工具Gtk/Gdk的扩展,能满足基于Gtk+库的图形用户界面可视化开发的基本需求 一.Glade简介 ...

  5. glade 使用指南(2)

    上次我们已经知道了glade的基本使用方法了,现在我们用他来做点有用的事 先让我们在上次建的window1中加点东西, 首先是一个vertical box,如图: 然后是一个label,如图: 之后再 ...

  6. 使用GTK+和Glade快速开发Linux图形界面

    * 使用 GTK+ 和 Glade 快速开发 Linux 图形界面 ** GTK+ 简介 *** 基本概念 GTK+ 是一种用于创建图形界面的库. 嗯, gnome 用的就是它, 不过并不是说只 有在 ...

  7. glade使用与GTK+学习初步

    一glade与GTK+简介 Glade:是 GTK+ 图形用户界面产生器 ,使用的是C语言实现的面向对象技术. GTK+ (GIMP Tool Kit) 是一套图形函式库 ,可用来建立 X Windo ...

  8. glade java_Gtk+/Glade编程(一)--简介

    http://jianjiaosun.blog.163.com/blog/static/13612448620110169390202/ By unanao 本文是我学习GTK+和glade3进行图形 ...

  9. glade java_Gtk+/Glade编程(一)--简介 | 学步园

    By unanao 本文是我学习GTK+和glade3进行图形界面编程的一点学习心得的整理,主要是使用GTK+/Glade编程的文档较少,而且没有说名如何将二者联系起来,以及二者之间的关系.本文通过比 ...

最新文章

  1. 2020年行政区划代码_2020年柳州市行政区划,了解柳州市有几个区,详细数据
  2. Servlet业务逻辑封装的试探
  3. VS2013 越来越慢
  4. 关于MYSQL 的 AUTO-INC Locks
  5. ECharts 联动效果
  6. 如何weak link一个framework (高版本兼容低版本)
  7. SQL Server 函数的使用(字符串函数)
  8. Netty-Pipeline组件
  9. 线上电商运营流程绘制流程图分享
  10. LinkSLA坚持用户第一,打造可持续的运维服务方案
  11. questasim编译报error: Declarations must precede statements. Look for stray semicolons.
  12. 一元三次方程重根判别式_一元三次方程的判别式和求根公式是什么?
  13. Linux--解决vi报错:E37: No write since last change E162: No write since last change for buffer
  14. 数字标签转化为one-hot形式的tensor
  15. android js下载地址,js点击下载跳转iOS或安卓
  16. ai绘画到底有大强?我开发了一款ai绘画(来看看)
  17. 大学计算机专业哪个学校最好,计算机专业:最好的7所大学!也是全中国“最难考”的大学!...
  18. 人工神经网络的算法原理,神经网络算法的原理是
  19. win10计算机管理器在哪,Windows10开启服务管理器图文教程|Win10系统服务管理器在哪...
  20. 小程序实现地图找房功能

热门文章

  1. Fn+F12查看response
  2. 冶金工业概论多媒体辅助教学系统
  3. 用户登录测试用例设计
  4. vue封装打印插件print.js实现打印组件功能
  5. 免费获取百度网盘会员一天或七天的不限速网盘会员
  6. 【Arc GIS 零基础教学】土地利用类型图的绘制方法
  7. 通过元气派达到呼吸灯的效果
  8. es6转es5的转码器babel的安装与使用
  9. 6大提示教你搞定LED恒流电源电路设计!
  10. Nginx——反向代理 负载均衡(无理论,案例实操)