Page tree
Skip to end of metadata
Go to start of metadata

GTK是一款开源的、面向多平台的GUI工具箱,其英文全称为GIMP Toolkit。最初是Peter Mattis 和 Spencer Kimball 为GNU Image Manipulation Program (GIMP)编写,用来替代付费的Motif。在后续的发展中,它已经成为通用的GUI库,应用于越来越多的程序,Linux平台的图形应用程序的半壁江山都是使用GTK编写的。


PyGTK是基于pyGObject。GObject是GTK的“面向对象” API。 GTK是用C开发的,它不是面向对象的语言。 GObject是一个提供高级面向对象设计的库。所有GTK对象都继承自该库提供的GObject类。

然后是GObject-introspection工作。它的目标是简化绑定维护,并使用源代码注释为每种语言(python,C++等)自动生成大部分绑定代码。这导致了pyGI中的python方面,这是基于GObject内省工作的python绑定。那时人们被告知使用它来进行GTK3开发。

从那时起,pyGI曾经提供的GObject-introspection工作已经集成到GObject中。 pyGObject最终成为开发人员在GTK3中用于python开发的东西。

如果使用Python来开发GTK应用,需要分情况

  • GTK2,使用PyGTK的
  • GTK3,使用pyGObject




GTK+3系列教程1:搭建GTK+3开发环境 https://www.jianshu.com/p/919d1ce67e56

GTK+3系列教程2:代码详解 https://www.jianshu.com/p/2158aa51cd5c

GTK+3系列教程3:添加控件 https://www.jianshu.com/p/f68cafbbf085

GTK+3系列教程4:添加事件处理 https://www.jianshu.com/p/d7dc0e3cd232

GTK+3系列教程5:使用Grid布局 https://www.jianshu.com/p/2e8045b4b63b

GTK+3系列教程6:UI神器Glade https://www.jianshu.com/p/854756d3f54d

GTK+3系列教程7:代码神器Builder https://www.jianshu.com/p/66d6b9a24c2e


http://www.peteronion.org.uk/PyGobjectGtk+3/PyGtk.html

http://www.learningpython.com/2006/05/07/creating-a-gui-using-pygtk-and-glade/


  • No labels