Készítse el első grafikus felhasználói felületét Pythonban a Glade és a GTK+ segítségével

Kulcs elvitelek

  • A Python fejlesztők a GTK+ és a Glade segítségével vizuális interfész segítségével intuitív grafikus felhasználói felületeket hozhatnak létre.
  • A példa környezetének beállítása magában foglalja a Python, a GTK+, a Glade és a PyGObject telepítését.
  • A GTK+ és a Glade for Python grafikus felhasználói felület fejlesztése felgyorsítja a folyamatot, és elválasztja a grafikus felület tervezését a kódtól.

A Python egy hozzáférhető nyelv, amely tökéletes adatelemzésre és webfejlesztésre. De nagyszerű választás GUI-alkalmazások fejlesztéséhez is. A GTK+ és a Glade leegyszerűsíti az egyszerű, többplatformos alkalmazások létrehozásának folyamatát.

GTK+ és Glade Interface Designer Python fejlesztőknek

A GTK+ (GIMP Toolkit) és a Glade Interface Designer nagyszerű kombináció a Python fejlesztők számára, akik intuitív és tetszetős grafikus felhasználói felületeket szeretnének létrehozni.

A GTK+ egy többplatformos eszközkészlet, amelyet grafikus felhasználói felület fejlesztéséhez használhat. Számos operációs rendszerrel kompatibilis, beleértve a Linuxot, a Windowst és a macOS-t.

A Glade Interface Designer, a GTK+ segédeszköze lehetővé teszi grafikus felhasználói felületek tervezését anélkül, hogy elrendezési kódot kellene írnia. Használhatja grafikus felhasználói felület létrehozására WYSIWYG környezetben néhány kattintással és egyszerű fogd és vidd funkciókkal.

Python-környezet beállítása a GTK+ és a Glade fejlesztéshez

A környezet beállítása az első fontos lépés a gördülékeny és hatékony munkafolyamat biztosításához.

  13 legújabb frissítés a GitHub Copilottól

1. Telepítse a Python-t

Kezdje azzal, hogy ellenőrizze, hogy a Python telepítve van-e a rendszeren. Az olvasott példákban Python 3 kódot fog látni, mivel jobb támogatást és integrációt kínál a GTK+ és a Glade számára. Linux és macOS esetén a Python rendszerint előre telepítve van.

A Windows-felhasználók letölthetik a Python-t innen a hivatalos Python webhely.

2. Telepítse a GTK+-t

A GTK+ csomagkezelő segítségével telepíthető.

Ubuntu és Debian alapú Linux rendszerek esetén használja:

 sudo apt-get install libgtk-3-dev 

Fedora és hasonlók esetén:

 sudo dnf install gtk3-devel 

MacOS rendszeren a Homebrew használatával:

 brew install gtk+3 

A Windows felhasználók letölthetik a GTK+-t innen A GTK hivatalos letöltési oldala. De ha telepítve van az MSYS2, megnyithatja az MSYS2 parancssort, és használhatja ezt a parancsot:

 pacman -S mingw-w64-x86_64-python-gobject 

3. Telepítse a Glade-et

A Glade telepítéséhez használhatja a parancssort.

Ubuntu és Debian alapú Linux disztribúciók esetén:

 sudo apt-get install glade 

Fedorán:

 sudo dnf install glade 

A macOS felhasználók használhatják a Homebrew-t:

 brew install glade 

A Windows-felhasználók a következő parancsot használhatják az MSYS2-vel:

 pacman -S mingw-w64-x86_64-glade 

4. Python-kötések a GTK+-hoz

Telepítse a PyGObject alkalmazást a GTK+ és a Python integrálásához. Az ehhez használt parancs a következő:

 pip install PyGObject 

Ha a PyGObject telepítése során hiba történik, például „A pycairo építőkeréke (pyproject.toml) nem futott”, akkor telepítenie kell a cairo csomagot is.

Ubuntu és Debian alapú Linux disztribúciók esetén:

 sudo apt-get install libcairo2-dev 

Fedora esetében:

 sudo yum install cairo-devel 

macOS rendszeren:

 brew install pygobject3 

5. Virtuális környezet beállítása (opcionális)

Bevált gyakorlat virtuális környezet használata Python-projektjeihez. Ez elszigeteli a projektfüggőségeket. Virtuális környezet létrehozása és aktiválása Linuxon a következő terminálparancsokkal:

 python -m venv myenv
source myenv/bin/activate

Windows használata esetén:

 python -m venv myenv
myenv\Scripts\activate

MacOS rendszeren annak biztosítására, hogy a virtuális környezet hozzáférjen a telepítést előkészítő csomagokhoz, használja a következőket:

 python -m venv --system-site-packages myenv
source myenv/bin/activate

6. A telepítés ellenőrzése

A GTK+ és a Glade telepítésének ellenőrzéséhez hozzon létre egy egyszerű Python-szkriptet, amely importálja a GTK-t:

 import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk

print("GTK+ version:", Gtk.get_major_version(), Gtk.get_minor_version())

A szkript futtatásakor a telepített GTK+ verziót fogja kiadni. Ha minden jól megy, beállította a fejlesztői környezetet.

  10 legjobb oktatóanyag a HTML INGYENES elsajátításához

Egyszerű GUI-alkalmazás létrehozása Glade Interface Designer és Python segítségével

Megtervezheti GUI-alkalmazását a Glade Interface Designerben, és exportálhatja az elrendezést projektfájlként. Ezután elérheti a projektfájlt a Python-kódból.

GUI tervezése Glade segítségével

A Glade fogd és vidd felülete megkönnyíti a tervezésre való összpontosítást anélkül, hogy beleragadna a mögöttes kódba. Indítsa el a Glade-et a rendszer alkalmazásmenüjéből vagy parancssorából ezzel a paranccsal:

 glade

Látnia kell a Glade felületet, ahol elkezdheti létrehozni a GUI elrendezést.

A bal felső sarokban található Új projekt létrehozása gomb egy üres vásznat biztosít a grafikus felület kialakításához. A Glade widgetek széles választékát kínálja a felső sávon, beleértve a gombokat, szövegbeviteleket és címkéket. Húzza ezeket a widgeteket a vászonra a grafikus felhasználói felület stílusának kialakításához. Tervezési igényei szerint átméretezheti és elhelyezheti a widgeteket.

Először válassza ki a GtkWindow widgetet a Felső szintek menüből:

A Glade jobb oldali sávjában található Általános oldalon egy ID opciót fog látni. Ez az azonosító a hozzáadott modul egyedi neve. Ebben a példában rendelje hozzá a myMainWindow azonosítót a hozzáadott GtkWindowhoz.

Mostantól widgeteket adhat hozzá a létrehozott főablakhoz. A felső sávban lépjen a Tárolók elemre, válassza ki a GtkBox widgetet, és húzza a munkaterületre. Akkor adj neki egy azonosítót, myMainBox.

  Keresse meg a Google Fiókjához kapcsolódó összes szolgáltatást

A GtkBox widget hozzáadása után a munkaterület jobb oldalán számos, az adott widgetre jellemző opciók jelennek meg. Itt szerkesztheti a teljes tervet anélkül, hogy kódot írna.

Ezután adjon hozzá egy Control widgetet a tervéhez. Ehhez lépjen a Vezérlő elemre a felső sávban, válassza ki példaként a GtkButton elemet, és húzza bárhová a GtkBoxban. Add meg az azonosítót, myButton. Ha szeretné, módosíthatja a gomb szövegét is a jobb oldali panel Általános lapján.

A GtkButton egy kattintható widget, így Python-kezelőt definiálhat hozzá, és később megírhatja a megfelelő kódot. A jobb oldali menüben lépjen a Jelek fülre, és adjon meg egy kezelőt a kattintott jelhez. Ebben a példában hívja on_button_clicked.

Most már mentheti a grafikus felhasználói felületet projektfájlként. Mentse a fájlt myDesign.glade néven.

A Glade Design fájl használata a Python kódból

Hozzon létre egy app.py fájlt ugyanabban a könyvtárban, mint a myDesign.glade fájl. Illessze be a következő kódot ebbe a fájlba:

 import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
from gi.repository import Gdk

class MyApp:
    def __init__(self):

        

        self.builder = Gtk.Builder()
        self.builder.add_from_file("myDesign.glade")

        

        self.window = self.builder.get_object("myMainWindow")
        self.window.connect("destroy", Gtk.main_quit)

        

        self.button = self.builder.get_object("myButton")
        self.button.connect("clicked", self.on_button_clicked)

        

        self.color_toggle = False

    def on_button_clicked(self, widget):

        

        color = "#FF0000" if self.color_toggle else "#00FF00"
        self.window.modify_bg(Gtk.StateType.NORMAL, Gdk.color_parse(color))
        self.color_toggle = not self.color_toggle

    def run(self):
        self.window.show_all()
        Gtk.main()

if __name__ == "__main__":
    app = MyApp()
    app.run()

Ez a kód megváltoztatja a háttér színét minden alkalommal, amikor a gombra kattint. Jegyezze meg a self.builder.get_object() hívásait, amelyek átadják a Glade-ben meghatározott widgetek azonosítóit.

Futtassa a Python-szkriptet ezzel a paranccsal az eredmény megtekintéséhez:

 python3 app.py 

A GTK+ és a Glade használatának előnyei Python GUI fejlesztéshez

A GTK+ és a Glade for Python grafikus felület fejlesztése egyértelmű előnyöket kínál. Általában egy grafikus felhasználói felület létrehozása sok időt és erőfeszítést igényel. A Glade Interface Designerrel azonban felgyorsíthatja a folyamatot. A Glade widgetek széles választékát is kínálja, mindegyik olyan könnyen használható, mint a példa gombja.

A Glade egyik fő előnye, hogy képes elkülöníteni a grafikus felületet a kódtól. Ez egyszerűbbé teszi a GUI karbantartását és frissítését. Ez a megközelítés tisztább, jobban szervezett kódhoz vezet, összhangban a modern programozási gyakorlattal.