?
PyGObject是使用一個(gè)Python綁定庫,用于訪(fǎng)問(wèn)GObject系統,使用GObject是使用GTK+3和GLib的底層對象系統,通過(guò)使用
在開(kāi)始之前,使用請確保已經(jīng)安裝了Python和PyGObject,使用接下來(lái),使用我們將詳細介紹如何使(shi)用PyGObject編寫(xiě)一個(gè)簡(jiǎn)單的使用圖形界面程序。
1、使用安裝PyGObject
pip install PyGObject2、使用導入所需的庫
在P??ython腳本中,我們需要導入一些必要的庫,如下所示:
impor(?????)t gigi.require_version('Gtk', '3.0')from gi.repo(????)sit??ory import Gtk, Gdkclass MyApp(Gtk.Window): def __init__(self): Gtk.Window.__init__(self, title="Hello World") self.set_de??fault_size(200, 100) self.connect("destroy", Gtk.main_quit) self.show_all() def on_activate(self, widget, event): print("Window activated")app = MyA??pp()app.connect("act(′?ω?`)ivate", app.on_activate)Gtk.main()4、創(chuàng )建界面元素
class MyWindow(Gtk.Window): def __init__(self): Gtk.Window.__i??nit__(self, title=&quoヽ(′ー`)ノt;H??ello World") self.set_default_size(20(╬?益?)0, 100) self.connect("destroy", Gtk.main_quit) self.show??_all()我們在MyWindow類(lèi)中添加一個(gè)名為cre( ?ヮ?)atヾ(?■_■)ノe_widgets的方法,用于創(chuàng )建界面(mian)元素:
def create_wi(′_`)dgets((′ω`)s??elf): label = Gtk.Label("Hello, PyGObject!") label.set_alignment(0.5, 0.5)(′?_?`) self.add(label)我們在MyWindow類(lèi)的__init__方法中調用create_wid??getsヾ(′?`)?方法:
self.cre(╥_╥)ate_widgets()完整的代碼如下:
import gigi.require_version('Gtk', '3.0')( ?ヮ?)from gi.repository import Gtk, Gdkclass MyWindow(Gtk.Window): def __init_ヽ(′▽?zhuān)?ノ_(self): Gtk.Window.__init__(self, title="Hello World") self.s??et_default_size(20(′;ω;`)0, 100) self.connect("destroy&q??uot;, Gtk.main_quit)(′?ω?`) self.show_all((?Д?)) self.create_widgets() de(O_O)f create_widgets(self): label = Gtk.Label("Hello, PyGObject!&quo( ?ヮ?)t;) label.set_alignment(0.5, 0.5) self.a(??ヮ?)?*:???dd(label)5、運行程序
現在,我們可以運行程序了,將上述代碼保存為myapp.py文件,然后在??命令行中輸入以下命令:
python myapp.py
運行后,你將看到一個(gè)包含“Hello, PyGObject!”標簽的窗口,點(diǎn)擊窗口的關(guān)閉按鈕或按下Ctrl+C組合鍵退出程序。