PyGTK 3: mini GUI dzidziso nePython + GTK + 3

Tichagadzira chirongwa chidiki nePyGTK 3.0 iyo inoshandawo kuPyGTK 3.4. Iyi diki GUI inokudzidzisa nzira yekukamura chirongwa kuita maviri kana anopfuura mafaera.

Unogona kushanyira dzidziso yaSebastian Pölsterl pane iyo nyowani PyGTK 3, heino dzidziso nyowani, ini ndinosiya iyi link:

http://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html

Iyi ndiyo blog yaSebastian.

http://k-d-w.org/node/88

Kumwe kushoropodza kwedzidziso iyi naSebastian ndeyekuti haidzidzise nzira yekukamura chirongwa muzvikamu kana mumafaira akati wandei, zvingave zvakanaka kana akaratidzira muenzaniso wekuzviita nePyGTK 3.

Ese makuru uye akaomarara mapurogiramu akapatsanurwa kuita akawanda mafaera uye mafaera akaiswa kunyange mune mamwe madhairekitori, ndiko kuti, ari munzvimbo dzakasiyana maforodha.

Ngatitangei nemuenzaniso mudiki:

Heino kodhi yekunyora mune imwechete faira inonzi gui.py. Isu tinovhura iyo Gedit chinyorwa mupepeti kana mupepeti watinoshandisa zvakanyanya, tinoteedzera kodhi iri pazasi uye toichengeta segui.py

kubva ku gi.repository kupinza Gtk kirasi gui (): def on_open_clicked (pachezvayo, bhatani): purinda "\" Vhura \ "bhatani rakadzvanywa" def on_close_clicked (wega, bhatani): purinda "Kuvhara application" Gtk.main_quit () def __init__ . bhatani = Gtk.Button (label = 'Open') self.button.connect ("clicked", self.on_open_clicked) self.box.pack_start (self.button, True, True, 0) self.button = Gtk.Button ( label = 'Close') self.button.connect ("clicked", self.on_close_clicked) self.box.pack_start (self.button, Chokwadi, Chokwadi, 0) self.window.show_all () Gtk.main () kana __name__ == '__main__': gui = gui ()

kumberi

def on_open_clicked (wega, bhatani): purinda "\" Vhura \ "bhatani rakadzvanywa"

Iri ibasa rinoitwa mumagetsi kana tadzvanya bhatani rakavhurika. Iyo chiratidzo kuimisa iri:

self.button.connect ("clicked", self.on_open_clicked) def on_close_clicked (self, button): purinda "Kuvhara application" Gtk.main_quit ()

Iri ibasa rinoitwa kana tikabaya pane bhatani rekuvhara.

vhara chirongwa chatinomhanya.

chiratidzo chekuimisa iri

self. ##

Widgets kuzivisa: majeti chirongwa chakatemerwa ne graphical interface raibhurari yatinoshandisa. Semuenzaniso, majeti ibhatani, hwindo, bhokisi, nezvimwe. Aya ndiwo majeti atinozivisa muchirongwa chedu.

kuzvidzora.window = Gtk.Window () ### hwindo ### self.box = Gtk.Box () ### bhokisi #### self.button = Gtk. # bhatani rakavhurika #### self.button = Gtk.Button (label = 'Vhara') #### kuvhara bhatani #### self.window.add (self.box) #### iro bhokisi riri mukati hwindo rinodaidzwa kuti window #### self.box.pack_start (self.button, True, True, 0) ##### bhatani racho riri mubhokisi rakanzi box ### self.window.show_all () ## # isu tinoratidza iyo hwindo rese ### gui = gui () ### gadzira chinhu chegui ####

Isu tinoisa chirongwa chedu mune dhairekita inonzi yakapusa kwatiri pane desktop

fotereza

Isu tinovhura dhairekita neiyo terminal, mune yangu kesi ini ndinoshandisa Nemo kubva kuLinux Mint 14.

vharika

Kugadzirira isu tinoisa mune yekupedzisira python gui.py

ona mufananidzo.

terminal

Iye zvino tava kuona yedu diki chirongwa kana nyowani widget yakagadzirwa nePyGTK 3 maraibhurari

Iwindo rakapusa rine mabhatani maviri.

Untitled

Iye zvino tinopatsanura chirongwa ichi muzvikamu zvitatu, ipapo ini ndinosiya kodhi yemafaira matatu.

Kutanga gui.py faira

kubva ku gi.repository kupinza Gtk kubva kuparadza kuunza kunze kuparadza kubva io kupinza io kirasi gui (kuparadza, io): def __init __ (self): self.window = Gtk.Window () self.window.connect ('delete-event', Gtk .main_quit) self.box = Gtk.Box () self.window.add (self.box) self.button = Gtk.Button (label = 'Open') self.button.connect ("clicked", self.on_open_clicked). self.box.pack_start (self.button, Chokwadi, Chokwadi, 0) self.button = Gtk.Button (label = 'Close') self.button.connect ("clicked", self.on_close_clicked) self.box.pack_start ( self.button, Chokwadi, Chokwadi, 0) self.window.show_all () Gtk.main () kana __name__ == '__main__': gui = gui ()

Chechipiri io.py faira

kirasi io: def on_open_clicked (pachezvayo, bhatani): purinda "\" Vhura \ "bhatani rakadzvanywa"

Chechitatu faira destroy.py

kubva ku gi.repository kupinza Gtk kirasi kuparadza: def on_close_clicked (pachezvayo, bhatani): purinda "Kuvhara application" Gtk.main_quit ()

Isu tinoisa matatu mafaera mune imwecheteyo folda kwatiri, iyo folda inonzi yakapatsanurwa yakakamurwa.

nyore

Kuumba mafaera matatu. Isu tinovhura dhairekitori neiyo terminal uye ndokungoidzosera mudura

python gui.py

Kugadziriswa kwakaitwa kune iyo gui.py kodhi

kubva kuparadza kupinza kunze kuparadza # # # chirevo kupinza yedu faira kuparadza.py # # # kubva io kupinza io # # # chirevo kupinza yedu faira io.py # # # kirasi gui (paradza, io): # # chikuru tinowedzera zvidimbu zvidimbu zvinoparadza uye io ####

Unogona kuona kuti chirevo

def on_open_clicked (wega, bhatani): purinda "\" Vhura \ "bhatani rakadzvanywa"

Haisi mugui.py, iri muiyo io.py faira

Mutongo

def on_close_clicked (wega, bhatani):

purinda "Kuvhara kunyorera"
Gtk.main_quit ()

iyo inowanikwa muparadza.py faira

Nekudaro isu tinogona kupatsanura chirongwa mune akawanda mafaera ari mune akasiyana madhairekitori panguva imwe chete.

Kune rimwe divi, Python ndiyo mbiru yesoftware yemahara, uye inochinjaniswa kuti ishande neGTK 3.6 /3.8, zita rayo ndiPyGTK. Kugadziriswa kwePython kweKDE kunonzi PyQT.

Python inoenderana neMac OS uye WINDOWS.

Ndinovimba iyi PyGTK3 mini dzidziso yakabatsira kwauri. Ivo vanogona kugadzira ese ekushoropodza anovaka avanoda.

Ini zvakare ndinoziva mamwe Gtk 3.4 /3.6 uye Vala GTK 3.4 / 3.6.

http://www.youtube.com/watch?v=9ckRn_sx8CE

Chekupedzisira, vashandisi veKDE vanokumbira ruregerero nekusaita mini dzidziso yeKDE.


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira iyo data: Miguel Ángel Gatón
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako

  1.   rots87 akadaro

    Mu kde ini ndoda kushandisa kdevelop (ndinofunga ndizvo zvazvinodaidzwa) kugadzira iyo gui zviri nyore asi ndichine nguva yakaoma yekuwana maitiro ekuti zviitike x chinhu: '(

  2.   st0rmt4il akadaro

    Yakakura kune avo vedu vanoshandisa Python: D!

    Ndinokutendai!

  3.   Pablo akadaro

    Mhoroi, ndanga ndichiteedzera nharaunda ino kwenguva yakareba uye handina chokwadi kana aka ndiko kekutanga kutaura kana kuti ndakatozviita kare 😀 (ini handina kunyatsopihwa kunyora zvirevo pawebhu chaizvo). Chinhu ndechekuti ini ndinozviita kuti ndisiye zano kuna Elav naKZKG ^ Gaara sevatungamiriri, uye ndinofunga chingave zano rakanaka kuwedzera plugin ye syntax coloring izvozvi izvozvi munguva pfupi yapfuura ini ndinoona zvimwe zvinyorwa zvine kodhi mumitauro yakasiyana yekuronga. Ndinoziva pane akati wandei plugins asi ini handina kuyedza chero sezvo ndisiri izwi reshandisi, saka ndinokusiya kuti ufunge nezve kugona kwechikumbiro. Ini ndinotora uyu mukana kubvunza vamwe vese vaverengi kuti ivo vanofungei nezve zano, nekuti ndinoziva kuti kune vanhu kunze uko vanofarira kuverenga kodhi vasina chero kushongedzwa. Ini ndinokumbira ruregerero kana izvi zvakatotaurwa pano uye zvakarambwa nechimwe chikonzero, sezvo ini ndisingarangariri ndichiona chero hurukuro panhau iyi.

    1.    marianogaudix akadaro

      Chokwadi ndechekuti ndinoda kuve nesarudzo yekupenda syntax yekusimbisa kodhi yemitauro yekuronga.
      Izvo zvaizobatsira vashandisi vanoda kudzidza mitauro yekuronga.

      Asi hei, ini ndinogadzikanawo ne foramu uye kuti tinogona kukurukura nekudzidza pamwe chete.

      1.    eliotime3000 akadaro

        GNU Emacs inosununguka, nekuti zvirinani iwe unofanirwa kusarudza kuti ndeupi programming wekutarisa iwe waunoda kushanda (kana iwe usiri kuda huremu hwakawanda hwe processor yako, shandisa GNU Nano uye unakirwe minimalism pazvakanyanya).

        1.    marianogaudix akadaro

          Elio tiri kutaura nezve WordPress. Inoshandiswa pablog Desde Linux. Haina mabasa ekupenda mavara ezvinyorwa.

          1.    eliotime3000 akadaro

            Ah ndine hurombo.

        2.    pandev92 akadaro

          Naaa emacs inokodzera kune avo vane makumi masere nemakumi mana nematanhatu XD .., vanhuwo zvavo, mameseji, sublimetext kana notepad ++ xd

          1.    eliotime3000 akadaro

            Chinhu chisingafungirwe hachisi kudzidza typing, izvo zvinodiwa kuti ugone kubata GNU Emacs uye ayo mapfupi ekhibhodi zvakanaka. Uye zvakare, iyo GUI inoita kuti zvive nyore kwauri kuti ushandise mamenu ayo (inogona kushandiswa muWindows, asi haina kukurudzirwa kuti uzviite neyakajairwa modhi asi nemirairo yekukurumidza maitiro kuitira kuti win32 isarambe script yako).

  4.   Carper akadaro

    Yakanaka kwazvo dzidziso. Asi nenzira, iyo python sosi kodhi haina kunyorwa, mutauro unodudzirwa.

    1.    giskard akadaro

      Iyo inogona kuve yakanyorwa kune pseudo kodhi. Hausi mutauro wemuchina asi mabheti anomiririra chimwe chinhu kumuturikiri, asi maitiro acho anonzi akaunganidzwa futi. Mupfungwa iyi, zvinokwanisika kutaura kuti chimwe chinhu chakanyorwa.

  5.   hty akadaro

    Zvichida zvirinani kudzidza pytgk2 nekuti vhezheni yazvino inowanikwa yeWindows ndeye 2.24. Series 3 inozivikanwa nekusavapo kwayo. Uye ndimi dzakaipa dzinoti gnome inoputsa maapis mune imwe neimwe vhezheni.

    1.    marianogaudix akadaro

      Ini ndinoronga mockup neGTK 3.4 / 3.6 uye chokwadi ndechekuti vanotyora kushivirira kwako nemusoro wako, iwe unofanirwa kunyora zvakare kodhi, ikozvino ndinonzwisisa kuti sei vanhu veLinux Mint vachinyunyuta nezveGTK uye iyo GNOME chirongwa.
      Kune avo veMINT ndinobvumirana neGTK 2.4 izvi hazvina kuitika.

  6.   Carlos akadaro

    Dzidziso yakanaka uye mareferensi.
    Ingori ruzivo, sezvo kodhi yakaiswa mukati, muPentent indentations inosungirwa uye inofanira kuremekedzwa mune yemuenzaniso kodhi.

    Ndinokutendai!

    1.    marianogaudix akadaro

      Unogona here kutsanangura izvo zvinosungirwa kuzivikanwa muPython zvine? Kuti ndikuudze chokwadi, handisati ndambonzwa izvozvo. Ini ndakanyanyojaira iyo PyGTK 2/3 maforamu muChirungu uye pamwe ini ndinotarisa.

      1.    giskard akadaro

        MuPython haushandise makiyi senge muC kana kutanga / kumagumo mabhureki sePascal, asi zvese zvinonzwisiswa kuburikidza neiyo induction yaunopa kune iyo kodhi. Ndokunge, mabhuroko anoonekwa seari kuiswa mukati. Icho chinhu chandinonyanya kuda. Iwe unodzivirira kunyora makiyi nezvinhu zvakadaro.

        1.    pandev92 akadaro

          Ini handidi izvo, zvinoita kunge zviri nyore kuisa maviri madiki makiyi kana std :: dzimba;, pane kuonekwa kana iyo xd mutsetse wakarongedzwa zvakanaka

          1.    Felipe akadaro

            : p Mudzidzisi wako wepurogiramu achaisa 0 kwauri. Kana zvakatonyanya ivo vachakudzinga pabasa rako. Izvo zvinonyanya kukosha ndezvekuti kodhi inoverengwa nezvose izvo zvinoreva

          2.    pandev92 akadaro

            kupera nekuvhara brace, zvinoita kuti ndiverenge zvakanyanya XD ..

          3.    giskard akadaro

            Zvakakomba ???


            int main(int argc, char *argv[]){program_name = argv[0];while ((argc > 1) && (argv[1][0] == '-')) {switch (argv[1][1]) {case 'v':verbose = 1; break;case 'o':out_file = &argv[1][2];break;case 'l':line_max = atoi(&argv[1][2]);break;default:fprintf(stderr,"Bad option %s\n", argv[1]);usage();}++argv;--argc;} if (argc == 1) {do_file("print.in");} else {while (argc > 1) {do_file(argv[1]);++argv;--argc;}}return (0);}

            Maona? Pasina indentations haina kunyatsonzwisiswa. Uye izvo zviri nyore. Neyakaomesesa, iye chete muunganidzi anozvinzwisisa. Chinhu ndechekuti, sezvo UNOFANIRA indent zvakadaro (kuti vanhu vanzwisise kodhi) nei zvingave zvakawandisa uye kushandisa vaparadzanisi? Zvakwana ne induction uye ndizvozvo.

          4.    pandev92 akadaro

            Ehezve, hapana chinonzwisiswa, nekuti hausi kuremekedza mirairo yekunyora kwakanaka kwechirongwa mu c / c ++. Izvo iwe zvawakaita zvinoshanda kune chero chinhu, sekudyara basa, mukati mekuita basa mukati meimwe basa iri mukati meimwe, saka ini ndoda kukuona iwe xd kana uchikwanisa kuzvinzwisisa.

          5.    pandev92 akadaro

            nenzira, nekutaridzika kuviri, iyo kodhi inonzwisisika nyore xD

          6.    giskard akadaro

            Zvandakaita ini ndakazviitira nemaune kukuratidza izvo pasina induction, kunyangwe ichinyora, zvinonetsa kuti unzwisise chero kodhi. Saka iwe une mitemo miviri: Indent uye inosanganisirwa ne delimiters. Asi izvo hazvishandi. MuPython yakadaro kodhi haigamuchirwe nemuturikiri. Uye iwe unongova nemutemo mumwe chete: Indent. Nyore.
            Asi hei, munhu wese ane zvavanofarira.

          7.    Atheyus akadaro

            Ose ari maviri akanaka, akaiswa mukati uye asina-indenti, mumaonero angu ini ndinofarira iyo semicolon maitiro kana ruby, yakafanana ne python asi iyo induction haina kudikanwa.

            Izvi zvinonzwisiswa zvirinani: P:

            echo 'int main (int argc, char * argv []) {program_name = argv [0]; nepo ((argc> 1) && (argv [1] [0] ==' - ')) {chinja (argv [ 1] [1]) {kesi 'v': verbose = 1; kupaza; kesi 'o': kunze_file = & argv [1] [2]; kutyora; kesi 'l': line_max = atoi (& argv [1] [2]); break; default: fprintf (stderr, »Yakashata sarudzo % s \ n », argv [1]); shandisa ();} ++ argv; –argc;} kana (argc == 1) {do_file (" print.in ");} zvimwe {apo (argc> 1 ) {do_file (argv [1]); ++ argv; –argc;}} dzoka (0);} '| perl -p -e 's / \ {/ \ {\ n \ t / g; s / \; / \; \ n \ t / g; s / \ t \} / \} / g;'

            Kwaziso 😀

      2.    giskard akadaro

        Ini ndinofunga Carlos zvinoreva kuti panobuda kodhi hapana indents. Izvo zvine kopi & unama hazvishande. Ini handizive kana iyo taki iripo paigadzira posvo kuisa kodhi yemitauro. Zvingave zvakanaka kana vakaiisa kana isipo.

        1.    giskard akadaro

          Ini ndatoona kuti dambudziko nderei: iyo CODE Tag inobvisa nzvimbo dzese nematebhu (haifanire kuita izvozvo !!!) Asi kana iwe ukaisa nbsp pairi ipapo kodhi inotaridzika zvakanaka. A0 mu hex (160 muna dec) kunyangwe ndichifunga kuti inogona kutsamira pafonti (ini handizive). Kana ikashandiswa zvino inobuda seizvi:

          def fib(n):
              a, b = 0, 1
              while a < n:
                  print(a)
                  a, b = b, a+b

          Kuti mumiyedzo yangu inoita senge yakanaka, asi ini handina preview pandinotumira mhinduro (uye panofanira kunge paine icho !!!) Kana zvikasabuda, haisi yangu mhosva

          1.    marianogaudix akadaro

            Tarisa uone iyo mienzaniso iyo Sebastian Pölsterl anopa mune yake PyGTK 3 dzidziso, Sebastian haaise mavara.

            Muenzaniso:

            http://python-gtk-3-tutorial.readthedocs.org/en/latest/entry.html#example

            unogona kuona zvese zvedzidziso yaSebastian.

          2.    giskard akadaro

            Handizivi zvaunoreva. Zvandiri kutaura ndezvekuti pano, mune zvakatumirwa, hazvigoneke kushandisa iyo HTML Tag «CODE» kuitira kuti izvo iwe zvaunoisa sekodhi uye zvinyatsobuda zvakanaka indented. Pa peji iwe raunoreva, kana iwe ukaona iwo masosi epeji, iwe uchaona kuti haishandise CODE asi inoshandisa mamwe maHTML delimiters.
            Izvo hazvipesane nekodhi iwe yaunoisa asi pane kunongedza kukanganisa mune yekutumira sisitimu ino. Izvo, pamwe, maAdmin anogona kugadzirisa.
            Kana ndotaura nezve ma tag ndiri pachena kutaura nezve HTML, kwete Python. Chero zvazvingaitika, kana iwe ukaisa kodhi isina induction mu Python haingoshanda. Kana newbie akauya akopa kodhi yacho sezvazvinowanikwa mune ino positi uye akaedza kuimhanya, anotadza. Unogona kushushikana sezvo uri newbie. Zvakare, mhosva haisi yako; uye mumhinduro yangu yapfuura yapfuura izvo zvandakaita kupa nzira yekugadzirisa dambudziko kubva kune mushandisi-ndiani-anotumira nhanho.

          3.    marianogaudix akadaro

            Warevesa chaizvo, ndinofanira kunge ndakaisa mafoto pane kutevedzera kodhi.
            kuratidza kuti zvirevo zvinorairwa zvakanaka sei muPyGTK 3.

  7.   Felipe akadaro

    Kuronga ne python ini ndinokurudzira kushandisa Eclipse nePyDev plugin, kana iyo Pychar m

  8.   louis akadaro

    Sezvambotaurwa pamusoro, ndosaka ndisingade python, nekuda kweiyo indentations. Sezvatakaona, kuteedzera nekuteedzera hakushande, izvo zvisingaitike nedzimwe mitauro senge C, Java, PHP, nezvimwe.

    Chinhu chinoverengeka, isu tinoshandisa kodhi yekushongedza (senge http://indentcode.net/ ) uye takagadzirira,

    Chinhu chakashata chakagadziriswa, asi kana pasina chekudzidzira uye pfungwa dzakashandurwa, tinonzwika ...

  9.   Carlos akadaro

    Ini ndiri mutsva kuPyGTK, zvinokwanisika here kudyidzana nezvinyorwa zveShell mumutauro uyu?

    1.    Hola akadaro

      Kutenda dzidziso.

      Thanks.