Ievads
GNU / Linux lietojumprogrammu izstrāde ar Python 3, Glade un GTK + 3 ir ļoti vienkārša, paketes pēc noklusējuma tiek piegādātas lielākajā daļā izplatījumu.
Caur Glade mēs varam ātri un viegli izveidot lietotāja saskarnes un pēc tam tās izmantot kopā ar Python. Lai to panāktu, jūs izmantojat PyGObject pateicoties GNOME piedāvātajai introspekcijas sistēmai, kas ievērojami atvieglo ātrās lietojumprogrammu izstrādi (RAD); ir iespējams izmantot arī mūsu saskarnes, kas izveidotas ar Glade no citām programmēšanas valodām.
Problēma rodas, kad mēs vēlamies izmantot mūsu lietojumprogrammas Microsoft Windows, jo vēl nesen šīs sistēmas pakotnes oficiāli nepastāvēja.
Ar šo apmācību ir paredzēts, ka programmas, kas ir izveidotas GNU / Linux, izmantojot Python 3 un GTK + 3, sistēmā darbojas bez problēmām.
Prasības
- Python 3.3
- Gtk + 3
- Glade 3.14 vai jaunāka (GUI dizainers)
- pigoobjekts
Instalēšana uz Windows
Tas sāksies, izveidojot mapi ar nosaukumu programmatūra vai citu jūsu vēlmi, un mēs tajā saglabāsim visas lejupielādētās paketes.
Lejupielādējiet instalācijas paketes
Lejupielādējiet Python 3.3
To var lejupielādēt no oficiālās Python lapas python.org
Noklikšķinot uz saites (Windows Installer) lejupielādēs Python instalētājs.
Lejupielādējiet Glade
Lejupielādes vietne: glade.gnome.org
Gan Python, gan Glade versijas ir 32 bitu versijas, taču tās darbojas nevainojami 64 bitu sistēmās
Lejupielādējiet PyGObject
Lejupielādes vietne: https://wiki.gnome.org/PyGObject
Mums ir jālejupielādē GTK + 3 versija
Pakotņu instalēšana
Līdz šim brīdim mums jau ir visas lejupielādētās pakotnes mapē programmatūra un, lejupielādējot katru paketi, vispirms sāksim ar Python instalēšanu.
Python instalēšana
Instalēšana ir ļoti vienkārša, vednis mūs vadīs procesā; Mēs atstājam visas opcijas atzīmētas pēc noklusējuma.
Kā redzams attēlā, Python instalē mapē C: \ Python33 \ Pēc noklusējuma mēs to atstājam tādu, kāds tas ir, un turpinām instalēšanu.
Šajā instalēšanas brīdī mēs izvēlamies opciju Ceļam pievienojiet python.exe, ar nolūku, ka, palaižot Python tulku, tas tiek izpildīts bez nepieciešamības to manuāli pievienot sistēmas ceļam.
Tad mēs pabeidzim instalēšanu, un mūsu sistēmā būs instalēts Python.
Glades uzstādīšana
Glade uzstādīšana nerada lielas komplikācijas, mēs palaižam instalēšanas programmu un izpildām vedņa darbības.
PyGObject instalēšana
Mēs bijām lejupielādējuši paketi pygi-aio-3.4.2rev11.7z, šajā paketē ietilpst PyGObject for Python 3.3 un GTK + 3 bibliotēkas operētājsistēmai Windows, kas ir saspiesta ar 7-zip, mēs to izpakojam, un mums būs mape ar šādu saturu:
Tagad mēs kopējam mapi gtk a C: \ Python33 \ Lib \ vietņu paketes kurā ir instalētas trešo pušu pakotnes Python.
Mēs atgriežamies pie savas mapes pygi-aio-3.4.2rev11 un mēs atveram mapi py33 Python versijai, kas ir 3.3
Mēs izvēlamies visu saturu mape py33 un mēs to kopējam atpakaļ mapē C: \ Python33 \ Lib \ vietņu paketes, mums tiks lūgts sajaukt un pārrakstīt, mēs atbildam apstiprinoši. Mapes saturs vietņu paketes tas būtu tāds, kā parādīts šajā attēlā:
Pareizas PyGobject un GTK + 3 instalēšanas pārbaude
Lai pārbaudītu, vai mūsu instalēšana ir bijusi pareiza, atveram Python IDLE un importējam bibliotēkas GTK + 3, un, ja mums nav kļūdas ziņojuma, viss tiks izdarīts pareizi.
from gi.repository import Gtk
Un kāpēc GTK? Vai nebūtu labāk attīstīties QT? turklāt tas ir daudzplatforms un daudzi saka, ka tā ir nākotne
Divas lieliskas grafiskās bibliotēkas GNU / Linux darbvirsmā ir GTK un QT, katra no tām izvēlas sev vēlamo. Nav pamata cīnīties.
Atšķirība starp GTK un QT ir tā, ka pēdējais ir ietvars, ļoti labs, bet, būdams ietvars, tas patērē nedaudz vairāk resursu.
Piemēram, Mozilla Firefox, Google Chrome, LibreOffice un garš utt. Tiek veidots ar GTK; Tas nenozīmē, ka tas ir labāks par QT, katram jāizvēlas tas, kas atbilst viņu vēlmēm un vajadzībām, mēs nevēlamies izraisīt diskusiju par to.
Google Chrome no 33. versijas, atstājiet gtk.
un kāpēc Windows, nevis Linux skaidrojums
Vai tāpēc, ka Linux viss jau ir iesaiņots un katra izplatītāja oficiālajos krātuvēs? Piemēram, Fedorā man jau pēc noklusējuma ir instalēti Python 3, Gtk + 3 un PyGobject. Ja es gribu Glade, tas ir tikai "yum install glade". Viegli vai ne? 🙂
Tā kā, kā saka Germāns, GNU / Linux izplatījumiem tie jau ir iepakoti, un tos ir ļoti viegli instalēt; piemēram, instalēt glade Debian ir ļoti vienkārši:
spēja instalēt izcirtumu
Vai es vēlos izmantot Python 2.7, vai darbības būs vienādas?
Acīmredzot, instalējot 2.7 bitu Python 32 (pat ja izmantojat 64 bitu OS) un py33 mapes vietā, 2.7 iet. Vai tas darbotos?
Paldies.
Nu jā, ja jums ir problēmas, atstājiet man komentāru.
Veiksmi.
Paldies, es jau esmu mēģinājis, un pagaidām "Hello world" darbojas man.
Es redzu, vai es varu saņemt kādu labu PyGTK3 apmācību vai kā to sauc, un kādas problēmas, brīdinājums.
Apmācība:
https://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html
Karamba! Liels paldies!
GTK3 testēšana ar Python 2.7 operētājsistēmā Windows un sekošana apmācībai. Līdz šim man darbojas visas programmas, izņemot 14. nodaļā (IconView -> https://python-gtk-3-tutorial.readthedocs.org/en/latest/iconview.html)
Tas man dod šādu kļūdu:
Traceback (pēdējais zvans pēdējais):
Fails "C: \ Users \ User \ Desktop \ test.py", 24. rinda, iekšā
win = IconViewWindow ()
Fails "C: \ Users \ User \ Desktop \ test.py", 19. rindiņa, __init__
pixbuf = Gtk.IconTheme.get_default (). load_icon (ikona, 64, 0)
Funkcijas Fails "C: \ Python27 \ lib \ site-paketes \ gi \ tips.py" 47. rindiņa
atgriešanās info.invoke (* args, ** kwargs)
GError: Ikona 'gtk-cut' tēmā nav
Es to izmēģināju ar citām ikonām, un tas arī nedarbojas. Vai man jāinstalē motīvs? Paldies kopš šī brīža.
Tāpat arī 19. piemērs. Velciet un nometiet.
Funkcija, kas tiek izsaukta abos gadījumos un kur tiek parādīta kļūda, ir:
pixbuf = Gtk.IconTheme.get_default (). load_icon (ikonas_nosaukums, 16, 0)
Es nevaru atrast ikonu, bet citos piemēros varat tos izmantot. Tas man rada kļūdu tikai tad, kad es vēlos to izmantot ar šo funkciju (šeit icon_name var aizstāt ar vērtību, piemēram, Gtk.STOCK_CUT vai jebkuru citu, un tas dod tieši to pašu kļūdu).
Es turpinu runāt ar sevi. Citos piemēros man der tas, ka attēli tiek ielādēti pogās. Es nevaru ielādēt ikonas ar funkciju, kas iekļauta divos iepriekš sniegtajos piemēros.
Es domāju, ka kļūda ir skaidra:
GError: Ikona 'gtk-cut' tēmā nav
Acīmredzot šī ikona nav pieejama, izmantojiet citu ikonu. Iespējams, pakotņu uzturētājs neietvēra motīvu ikonas vai arī to nevar atrast noklusējuma ceļā, izmantojiet GNU / Linux izplatīšanu un pārbaudiet, vai joprojām parādās tā pati kļūda.
Attiecībā uz 19. jautājumu tas, šķiet, ir saistīts ar PyGobject versiju, dokumentācijas augšdaļā teikts:
Piezīmes
Lai darbotos šādi piemēri, ir nepieciešamas PyGObject = 3.0.3 versijas.
Jums ir 3.0 versija, izmēģiniet GNU / Linux izplatīšanu; un pēc tam mums jāgaida, kamēr viņi atjauninās pakotni (operētājsistēmai Windows), vai arī jebkurā gadījumā jūs to varat pats sastādīt.
Sveiciens un dodieties tālāk.
Ubuntu visi apmācības piemēri man ir lieliski piemēroti. Operētājsistēmā Windows tas joprojām nedarbojas. Man būs jāgaida. Vēl viens, kas nestaigā, ir Spinner piemērs, kurš neveic animāciju. Sveiciens un paldies.
Esmu sekojis instalēšanas apmācībai un visu instalējis soli pa solim.
Un izpildot šādu kodu:
no gi.repository import Gtk
klases Fiestra galvenais:
def __init __ (pats):
filename = "/ data / dam / Python exemples / Saudoform"
konstruktors = Gtk.builder ()
constructor.add_from_file (faila nosaukums)
# vārdnīca, kurā mēs saistām sinaisus ar notikumiem
sinais = {
«ClickedAccept»: self.clic_boton,
"ActivateTextCadro": self.clic_boton,
"DestroyFiestra": Gtk.main_quit
}
constructor.connect_signals (sinais)
# Mēs iegūstam atsauci uz XML deskriptoru, lai varētu piekļūt
self.label = self.widgets_widget ("Iezīme")
self.cadroTexto = self.widgets_widget ("CadroTexto")
def button_click (pats, logrīks):
text = self.cadroTexto.get_text ()
self.label.set_text ("vilnis% s"% teksts)
ja __nosaukums == »__ galvenais__»:
Fiestra galvenais ()
Gtk.Galvenais ()
Es saņemu šo atbildi:
Traceback (pēdējais zvans pēdējais):
Fails «C: / Users / admin / Google Drive / test / SaudoForm.py», 3. rinda, iekšā
no gi.repository import Gtk
Fails "C: \ Python33 \ lib \ site-package \ gi \ __ init__.py", 27. rindiņa,
no ._gi import _API, krātuve
ImportError: DLL ielāde neizdevās:% 1 nav derīga Win32 lietojumprogramma.
Kāds zina, kāda ir problēma vai kāds var būt tās iespējamais risinājums.
Liels paldies.
Interesanti. Es biju veicis instalēšanu Linux, bet Windows izskaidrojums ir labs, tagad man tas ir abos. 😉
Pirmo reizi tas ir smieklīgi uz 7 bitu Windows 32.
Operētājsistēmā Windows 7 64 bitu es nevaru to palaist, es vienmēr to saņemu;
>>> no gi.repository import Gtk
Traceback (pēdējais zvans pēdējais):
Fails «», 1. rindiņa, iekš
Fails "C: \ Python33 \ lib \ site-package \ gi \ __ init__.py", 27. rindiņa,
no ._gi importēt _API
ImportError: DLL ielāde neizdevās: norādītais process netika atrasts.
Es to esmu mēģinājis, cik vien iespējams, jau pazaudēju ilūziju par tā instalēšanu.
Jūs redzēsiet, ka 64 bitu bibliotēkās joprojām ir dažas kļūdas. Lūdzu, instalējiet gan Python, gan GTK + 32 bitu versiju, lai jums nebūtu problēmu.
Nekad nevajadzētu zaudēt ilūziju 🙂
Sveiki, es strādāju ar python + gtk3, tagad ir ļoti labi, ka man ir neliela problēma. Šajā gadījumā es vēlos mainīt ikonu uz savu veidlapu (logu), un es varu to mainīt, pateicoties jau iepriekš
publicējiet vienkāršus videoklipus par to, kā programmēt gtk + 3, un vienkāršus apsveikuma sveicienus
Lieliska apmācība. Liels paldies par jūsu pūlēm. Sveiciens.
Es veicu visas darbības, un, kad es uzticējos instalēšanai, es saņēmu šo kļūdu.
Traceback (pēdējais zvans pēdējais):
Fails «», 1. rindiņa, iekš
no gi.repository import Gtk
ImportError: Nav moduļa ar nosaukumu “gi”