现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

GTK+学习:概述

2015-02-02 22:41 工业·编程 ⁄ 共 839字 ⁄ 字号 暂无评论

相对于Swing之于Java,C/C++环境下的GUI构建就显得复杂得多。首先就是C/C++语言并没有一个官方的GUI库。于是,第三方类库就如雨后春笋般成长起来。由于C/C++没有Java类似的跨平台性,所以其类库大多也是限定平台的,比如微软的MFC。当然也会有很多能够跨平台的GUI库,比如Qt,比如wxWidget,比如我们这里所要讲解的GTK+。

相对于MFC、Qt和wxWidget,GTK+使用面向对象框架的纯C语言编写。这是一个小巧但是功能丝毫没有逊色的GUI类库。Linux下的GNOME环境就是使用GTK+编写的,还有类似于Photoshop的GIMP,更与GTK+有着密不可分的联系。下面先来简单介绍一下GTK+。

说起GTK+,首先要先说GIMP。在很多推荐使用自由软件代替商业软件的文章中,大多会提到,使用开源的GIMP代替Photoshop。GIMP是GNU Image Manipulation Program的缩写,最初是类Unix操作系统上的图像处理程序,现在也被移植到了Windows平台。为了简化GIMP的开发,GIMP ToolKit诞生了,这就是GTK。在增加了面向对象的特性之后,它的名字后面添加了一个加号,于是就成为GTK+。

  1. GTK+是一个创建图形化用户界面的库,能够运行于类Unix平台、Windows平台和其他设备上。GTK+依赖于下面所列出的几个库:
  2. GLib - 一个通用的工具库,并不仅仅用于创建图形用户界面。GLib定义了很多数据类型、宏、文件工具等;
  3. Pango - 国际化文字绑定;
  4. ATK - 提供图形用户界面交互访问技术的通用接口;
  5. GdkPixbuf - 允许从图像数据或者图像文件创建像素缓冲;
  6. GDK - 为不同的窗口系统提供的抽象层,提供本地图形接口和GTK+间的一个抽象,是平台相关的。如果需要向其他平台上移植GTK+,只需要重新编写GDK;
  7. GTK - GTK+库,提供了各种控件。

      我们对GTK+的学习仅仅为了使用GTK+,不会过多的纠缠这些库的使用。

      给我留言

      留言无头像?