Disvolvi programojn kun Python 3, Glade kaj GTK + 3 en Vindozo

Enkonduko

En GNU / Linukso disvolvi programojn kun Python 3, Glade kaj GTK + 3 estas tre facila, la pakoj aperas defaŭlte en plej multaj distribuoj.

Danke al Maldensejo ni povas krei uzantajn interfacojn rapide kaj facile kaj poste uzi ilin kune kun Python. Por atingi tion vi uzas PyGObject danke al la introspekta sistemo, kiun GNOME ofertas, kiu multe pli faciligas Rapidan Aplikan Disvolviĝon (RAD); eblas ankaŭ uzi niajn interfacojn kreitajn kun Glade de aliaj programlingvoj.

La problemo ekestas kiam ni volas uzi niajn programojn en Vindozo, ĉar ĝis antaŭ nelonge la pakoj por ĉi tiu sistemo ne oficiale ekzistis.

Kun ĉi tiu lernilo oni celas, ke programoj kreitaj en GNU / Linukso per Python 3 kaj GTK + 3 funkcias senprobleme en Vindozo.

Postuloj

  • python 3.3
  • Gtk + 3
  • Maldensejo 3.14 aŭ pli alta (GUI-projektanto)
  • pigobjekto

Instalado en Vindozo

Ĝi komencos per kreado de dosierujo nomata programaro aŭ alia laŭ via prefero kaj ni konservos en ĝi ĉiujn elŝutitajn pakaĵojn.

Elŝutu instalajn pakaĵojn

Elŝutu Python 3.3

Ĝi elŝuteblas de la oficiala Python-paĝo python.org

Elŝutu instalilon de Python

Elŝutu instalilon de Python

Alklakante la ligon (Windows Installer) la instalilo de Python elŝutos.

Elŝutu Maldensejon

Elŝuta retejo: glade.gnome.org

Ambaŭ Python kaj Glade-versioj estas 32-bitaj, sed ili funkcias perfekte sur 64-bitaj sistemoj

Maldenseja Paĝo

Maldenseja Paĝo

Elŝutu PyGObject

Elŝuta retejo: https://wiki.gnome.org/PyGObject

Ni devas elŝuti la version por GTK + 3

PyGObject

PyGObject

PyGObject en Google-kodo

PyGObject en Google-kodo

Instalado de la pakaĵoj

Nu ĝis ĉi tiu punkto ni jam havas ĉiujn elŝutitajn pakojn en la dosierujo programaro kaj ĉar ni elŝutis ĉiun pakon, ni komencos unue per la instalado de Python.

Elŝutitaj pakoj

Elŝutitaj pakoj

Python-instalado

Instalado estas tre simpla, la sorĉisto gvidos nin tra la procezo; Ni lasas ĉiujn eblojn markitajn defaŭlte.

Instala programo de Python

Instala programo de Python

Kiel vidite en la bildo, Python instalas en la dosierujo C: \ Python33 \ defaŭlte ni lasas ĝin tia, kia estas kaj daŭrigas la instaladon.

Python-instala dosierujo

Python-instala dosierujo

Je ĉi tiu punkto de la instalado ni elektas la opcion Aldonu python.exe al Vojo, kun la celo, ke kiam ni lanĉas Python-interpretilon, ĝi estos plenumita sen la bezono aldoni ĝin al la sistemo-vojo mane.

Aldonu Python al la Sistema Vojo

Aldonu Python al la Sistema Vojo

Poste ni finas la instaladon kaj Python estos instalita en nia sistemo.

Glade-Instalaĵo

Glade-instalado ne reprezentas gravan komplikaĵon, ni lanĉas la instalan programon kaj sekvas la paŝojn de la sorĉisto.

Instalu maldensejon

Instalu maldensejon

Instalado de PyGObject

Ni elŝutis la pakaĵon pygi-aio-3.4.2rev11.7z, ĉi tiu pako inkluzivas PyGObject por Python 3.3 kaj la bibliotekojn GTK + 3 por Vindozo, kun kiuj estas kunpremita 7-zip, ni malzipigas ĝin kaj ni havos dosierujon kun la sekva enhavo:

Enhavo de la dosierujo pygi-aio-3.4.2rev11.7

Enhavo de la dosierujo pygi-aio-3.4.2rev11.7

Nun ni kopias la dosierujon gtk a C: \ Python33 \ Lib \ site-packages kiu estas instalitaj la triaj pakoj por Python.

Kopiu gtk-dosierujon

Kopiu gtk-dosierujon

Gtk-dosierujo ĉe C: \ Python33 \ Lib \ site-packages

Gtk-dosierujo ĉe C: \ Python33 \ Lib \ site-packages

Ni reiras al nia dosierujo pygi-aio-3.4.2rev11 kaj ni malfermas la dosierujon py33 por la versio de Python kiu estas 3.3

Enhavo de la dosierujo py33

Enhavo de la dosierujo py33

Ni elektas ĉiu enhavo el la dosierujo py33 kaj ni kopias ĝin reen al la dosierujo C: \ Python33 \ Lib \ site-packages, oni petos nin miksi kaj surskribi, ni respondas jese. La enhavo de la dosierujo retejoj-pakoj ĝi estus kiel montrita en la sekva bildo:

Kopiu la enhavon de la dosierujo py33 al C: \ Python33 \ Lib \ site-packages

Kopiu la enhavon de la dosierujo py33 al C: \ Python33 \ Lib \ site-packages

Kontrolante la ĝustan instaladon de PyGobject kaj GTK + 3

Por kontroli, ke nia instalado ĝustas, ni malfermas la Python IDLE kaj importas la bibliotekojn GTK + 3 kaj se ni ne havas erarmesaĝon, ĉio estos farita ĝuste.

from gi.repository import Gtk

PyGobject kaj GTK + 3 ĝuste instalitaj

PyGobject kaj GTK + 3 ĝuste instalitaj

 


La enhavo de la artikolo aliĝas al niaj principoj de redakcia etiko. Por raporti eraron alklaku Ĉi tie.

24 komentoj, lasu la viajn

Lasu vian komenton

Via retpoŝta adreso ne estos eldonita. Postulita kampojn estas markita per *

*

*

  1. Respondeculo pri la datumoj: Miguel Ángel Gatón
  2. Celo de la datumoj: Kontrola SPAM, administrado de komentoj.
  3. Legitimado: Via konsento
  4. Komunikado de la datumoj: La datumoj ne estos komunikitaj al triaj krom per laŭleĝa devo.
  5. Stokado de datumoj: Datumbazo gastigita de Occentus Networks (EU)
  6. Rajtoj: Iam ajn vi povas limigi, retrovi kaj forigi viajn informojn.

  1.   Joakimo diris

    Kaj kial GTK? Ĉu ne estus pli bone disvolviĝi en QT? krom esti plurplatforma kaj multaj diras, ke ĝi estas la estonteco

    1.    artus diris

      Nu, la du grandaj grafikaj bibliotekoj sur la labortablo GNU / Linukso estas GTK kaj QT, ĉiu elektas tiun, kiun ili preferas. Ne estas kialo batali.

      La diferenco inter GTK kaj QT estas, ke ĉi-lasta estas kadro, tre bona, sed estante kadro, ĝi konsumas iom pli da rimedoj.

      Ekzemple Mozilla Firefox, Google Chrome, LibreOffice kaj longa ktp estas kreitaj per GTK; Ĉi tio ne signifas, ke ĝi estas pli bona ol QT, ĉiuj devas elekti tiun, kiu konvenas al siaj preferoj kaj bezonoj, ni ne volas kaŭzi diskuton pri ĝi.

      1.    pandev92 diris

        Google Chrome de versio 33, forlasu gtk.

  2.   rolo diris

    kaj kial la klarigo por Windows kaj ne linux

    1.    Germana diris

      Ĉu ĉar en Linukso ĉio jam estas pakita kaj en la oficialaj deponejoj de ĉiu distro? Ekzemple en Fedora mi jam havas Python 3, Gtk + 3 kaj PyGobject instalitajn defaŭlte. Se mi volas Glade, ĝi estas nur "yum install glade". Facila ĉu ne? 🙂

    2.    artus diris

      Ĉar kiel Germán diras, por distribuoj GNU / Linukso ili jam estas pakitaj kaj estas tre facile instali ilin; ekzemple instali glade en Debian estas tre simpla:
      aptitude install glade

  3.   Marcelo diris

    Se mi volas uzi Python 2.7, ĉu la paŝoj estos samaj?
    Evidente, instalante la 2.7-bitan Python 32 (eĉ se vi uzas la 64-bitan OS) kaj anstataŭ la dosierujo py33, la 2.7 funkcius. Ĉu ĝi funkcius?
    Dankon.

    1.    artus diris

      Nu jes, se vi havas problemon, lasu al mi komenton.

      Ŝanco.

      1.    Marcelo diris

        Dankon, mi jam provis kaj nuntempe la "Salutmondo" funkcias por mi.

        Mi vidas ĉu mi ricevas bonan lernilon pri pyGTK3 aŭ kiel ajn ĝi nomiĝas kaj iujn problemojn, rimarku

          1.    Marcelo diris

            Caramba! Multaj dankoj!

          2.    Marcelo diris

            Provante la GTK3 kun Python 2.7 en Vindozo kaj sekvante la lernilon. Ĝis nun ĉiuj programoj funkcias por mi, krom tiu en Ĉapitro 14 (IconView -> https://python-gtk-3-tutorial.readthedocs.org/en/latest/iconview.html)

            Ĝi donas al mi la jenan eraron:
            Traceback (plej freŝa alvoko laste):
            Dosiero "C: \ Users \ User \ Desktop \ test.py", linio 24, en
            win = IconViewWindow ()
            Dosiero "C: \ Users \ User \ Desktop \ test.py", linio 19, en __init__
            pixbuf = Gtk.IconTheme.get_default (). load_icon (ikono, 64, 0)
            Dosiero "C: \ Python27 \ lib \ site-packages \ gi \ types.py", linio 47, en funkcio
            revenu info.invoke (* args, ** kwargs)
            GError: Ikono 'gtk-cut' ne ĉeestanta en la temo

            Mi provis ĝin per aliaj ikonoj kaj ĝi ankaŭ ne funkcias. Ĉu mi bezonas instali temon? Dankon ekde nun.

          3.    Marcelo diris

            Nek Ekzemplo 19. Trenas kaj Malplenigas.

            La funkcio, kiu vokas en ambaŭ kazoj, kaj tie mi havas eraron, estas:

            pixbuf = Gtk.IconTheme.get_default (). load_icon (piktograma nomo, 16, 0)

            Mi ne povas trovi la ikonon, sed en aliaj ekzemploj vi povas uzi ilin. Ĝi donas al mi eraron nur kiam mi volas uzi ĝin kun tiu funkcio (ĉi tie ikononomo povas esti anstataŭigita per valoro kiel Gtk.STOCK_CUT aŭ kio ajn kaj ĝi donas precize la saman eraron).

          4.    Marcelo diris

            Mi daŭre parolas al mi mem. Kio funkcias por mi en aliaj ekzemploj, estas, ke la bildoj ŝarĝas sur la butonoj. Mi ne povas ŝarĝi la ikonojn kun la funkcio, kiu venas en la du ekzemploj, kiujn mi donis antaŭe.

          5.    artus diris

            Mi pensas, ke la eraro estas klara:
            GError: Ikono 'gtk-cut' ne ĉeestanta en la temo

            Ŝajne tiu ikono ne disponeblas, uzu alian ikonon. Probable la paka prizorganto ne inkluzivis la temajn ikonojn aŭ ĝi ne troveblas en la defaŭlta vojo, uzu distribuon GNU / Linukso kaj vidu ĉu la sama eraro ankoraŭ aperas.

            Pri demando 19, ĝi ŝajnas esti rilata al la PyGobject-versio, sur la supro de la dokumentado ĝi diras:

            noto
            Versioj de PyGObject = 3.0.3 necesas por la sekvaj ekzemploj funkcii.

            La versio, kiun vi havas, estas 3.0, provu distribuon GNU / Linukso; kaj tiam ni devas atendi, ke ili ĝisdatigu la pakon (por Vindozo) aŭ ĉiuokaze vi mem povos kompili ĝin.

            Salutojn kaj plu.

          6.    Marcelo diris

            En Ubuntu ĉiuj lernaj ekzemploj funkcias perfekte por mi. En Vindozo, ĝi ankoraŭ ne funkcias. Mi devos atendi. Alia, kiu ne marŝas, estas la ekzemplo de la ŝpinilo, kiu ne faras la kuraĝigon. Saluton kaj dankon.

  4.   Joŝua diris

    Mi sekvis la instalinstruilon kaj instalis ĉion paŝon post paŝo.
    Kaj plenumante la jenan kodon:
    de gi.repository import Gtk

    klaso FiestraPrincipal:
    def __init __ (mem):
    dosiernomo = "/ data / dam / Python exemplars / Saudoform"
    konstruanto = Gtk.builder ()
    konstruisto.add_de_dosiero (dosiernomo)
    #vortaro, kie ni rilatas sinajojn kun eventoj
    sinais = {
    «ClickedAccept»: self.clic_boton,
    "AktivigiTekston": self.clic_boton,
    "DestroyFiestra": Gtk.main_quit

    }
    constructor.connect_signals (Sinais)
    #Ni ricevas referencon al la XML-priskribilo por povi aliri
    self.label = self.widgets_widget ("Etikedo")
    self.cadroTexto = self.widgets_widget ("CadroTexto")

    def butono_klaki (mem, fenestraĵo):
    teksto = self.cadroTexto.get_text ()
    self.label.set_text ("ondo% s"% teksto)

    se __nomo__ == »__ ĉefa__»:
    FiestraPrincipal ()
    Gtk.Main ()

    Mi ricevas ĉi tiun respondon:
    Traceback (plej freŝa alvoko laste):
    Dosiero «C: / Users / admin / Google Drive / test / Saudo Form.py», linio 3, en
    de gi.repository import Gtk
    Dosiero "C: \ Python33 \ lib \ site-packages \ gi \ __ init__.py", linio 27, en
    de ._gi import _API, Deponejo
    ImportError: DLL-ŝarĝo malsukcesis:% 1 ne estas valida Win32-aplikaĵo.

    Iu scias, kio estas la problemo, aŭ kio eble estas ĝia ebla solvo.
    Multan dankon

  5.   Jesuo diris

    Interesaj. Mi faris la instaladon en linukso, sed la klarigo por Windows estas bona, nun mi havas ĝin en ambaŭ. 😉

  6.   Rafael Carmona diris

    Ĝi estas amuza ĉe 7-bita Windows 32 la unuan fojon.
    Sur Vindozo 7 64-bita, mi ne povas funkciigi ĝin, mi ĉiam akiras ĝin;
    >>> de gi.repository import Gtk
    Traceback (plej freŝa alvoko laste):
    Dosiero «», linio 1, en
    Dosiero "C: \ Python33 \ lib \ site-packages \ gi \ __ init__.py", linio 27, en
    de ._gi import _API
    ImportError: DLL-ŝarĝo malsukcesis: La specifa procezo ne estis trovita.

    Mi provis ĝin ĉiuokaze ebla, mi jam perdis la iluzion instali ĝin.

    1.    artus diris

      Vi vidos, ke la 64-bitaj bibliotekoj ankoraŭ havas iujn erarojn, bonvolu instali la 32-bitan version de kaj python kaj GTK + por ke vi ne havu problemojn.

      Vi neniam perdu la iluzion 🙂

  7.   richard diris

    Saluton, mi laboras kun python + gtk3, estas tre bone nun mi havas problemon, mi volas ĉi-kaze ŝanĝi la ikonon al mia formo (fenestro) kaj mi povas ŝanĝi ĝin, antaŭdankon, Salutojn

  8.   jors diris

    publikigu simplajn filmetojn pri kiel programi en gtk + 3 kaj simplajn lernilojn salutas

  9.   jose diris

    Bonega lernilo. Koran dankon pro via penado. Salutojn.

  10.   jkmilo1030 diris

    Mi faris ĉiujn paŝojn kaj kiam mi fidis la instaladon, mi ricevis ĉi tiun eraron.

    Traceback (plej freŝa alvoko laste):
    Dosiero «», linio 1, en
    de gi.repository import Gtk
    ImportError: Neniu modulo nomata 'gi'