0%

Python PyGtk 学习笔记

PyGtk 学习笔记

PyGtk简介

PyGtk是一套用Python封装的GTK 的图形库,通过Python编程语言使用PyGtk图形库可以轻松的写出GUI程序。它是GNOME项目的一部分。PyGTK是基于LGPL许可之下的免费软件。其原始作者是James Henstridge。PyGTK非常容易使用,对于速成原型法,它是相当理想的。普遍地认为,PyGTK是最流行的GTK 库封装中的一种。
其中PyGtk包含几个模块:GObject、ATK、GTK、Pango、Cairo、Clade
GObject是基类,它为PyGTK所以类提供通用的属性和函数。

  •     ATK 是一个提供辅助功能的工具包。该工具包提供了帮助残障人士使用计算机的各种工具。
    
  •     GTK 是用户界面模块。
    
  •     Pango是一个用于处理文本和国际化的库。
    
  •     Cairo是一个用于创建2D矢量模型的库。
    
  •     Glade是用来从XML描述中构建GUI界面。
    

如果你是Linux用户的话,不必担心安装配置问题,目前大部分Linux发行版中都包含了Python、PyGtk,所以直接用就行了。

从一个简单示例开始

很简单的一个窗口,下面是实现它的完整代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/python
#-*- encoding:utf-8 -*-
#建立一个窗口

import gtk
class PyApp(gtk.Window):
def __init__(self):
super(PyApp, self).__init__()
self.set_title("PyGtk")
self.set_size_request(250, 150)
self.set_position(gtk.WIN_POS_CENTER)

self.connect(“destroy”, gtk.main_quit)

self.show()

def main(self):
gtk.main()

print __name__
if __name__ == "__main__":
pyapp = PyApp()
pyapp.main()

使用PyGtk当然要有一定的Python基础,把上述代码保存为pygtkwin.py,在控制台执行如下命令就能看到一个窗口了。
python pygtkwin.py
简单分析一下代码:

1
2
3
4
5
6
7
8
9
10
11
12
import gtk
#这里是导入PyGtk的gtk模块。
self.set_title(“PyGtk”)
self.set_size_request(250, 150)
self.set_position(gtk.WIN_POS_CENTER)
#这里的PyApp继承至GTK的窗口类,即gtk.Window。上面的set分别是设置窗口标题、窗口尺寸、窗口位置。
self.connect(“destroy”, gtk.main_quit)
#这里的connect是把该类的destroy事件绑定到gtk.main_quit方法上。效果就是点击窗口的关闭按钮,就会销毁整个装口。
self.show()
#用来现实这个窗口。
gtk.main()
#使用于启动GTK的循环,来保持窗口的运行。
处无为之事,行不言之教;作而弗始,生而弗有,为而弗恃,功成不居!

欢迎关注我的其它发布渠道