好吧,我们以创建最简单的例子来开始我们的教程。运行这个程序就会创建一个空的200x200的窗口,如图:我反正是真的运行了。
examples/simple_example.py
现在我们开始逐行讲解这个例子。(呃,要不要这样啊。。。。)
examples/simple_example.py
首行,以 #!开头,后面跟着你想要调用的Python解释器的路径。
examples/simple_example.py
要访问GTK+的类和函数,你必须首先导入Gtk模块。下一行创建了一个空的窗口。
examples/simple_example.py
接下来连接窗口的delete-event以保证当我们点击x来关闭窗口时能够关闭这个程序。
examples/simple_example.py
下一步我们显示了这个窗口。
examples/simple_example.py
最后,我们开始了GTK+的处理循环,这个循环在我们关闭窗口时才会退出(详情见代码第五行的事件连接)。
examples/simple_example.py
要运行这个程序,直接在终端:
python simple_example.py
让事情变得稍微有那么点儿意义吧, PyGObject版本的 “Hello World” 程序。
examples/extended_example.py
这个例子与上一个例子的不同在于我们子类化了 Gtk.Window
来定义我们自己的 MyWindow
类。
examples/extended_example.py
在我们的类的构造函数中我们必须要调用父类的构造函数。另外,我们告诉它设置 title 属性的值为 Hello World 。
examples/extended_example.py
接下来的三行我们创建了一个按钮控件,连接了其 clicked 信号,然后将其添加为顶层窗口的孩子。
examples/extended_example.py
如上,如果你点击了这个按钮,on_button_clicked
方法就会被调用。
examples/extended_example.py
最后面在类外面这一段,与上面那个例子很类似,但我们没有创建Gtk.Window
类的实例, 而是创建了我们的 MyWindow
类的实例。