Tehke lihtsad GUI-id, kasutades EasyGUI-d kasutades vaarikaid Pi

Grapilise kasutajaliidese (GUI) lisamine teie Raspberry Pi projektile on suurepärane võimalus sisestada ekraan andmete sisestamiseks, ekraaninuppude kontrollimiseks või isegi lihtsam viis näidikute näitamiseks sellistest komponentidest nagu andurid.

01 of 10

Tehke oma projekti jaoks liides

EasyGUI on lihtne ja lihtne nädalavahetuse proovimiseks. Richard Saville

Vaarika Pi jaoks on olemas mitmeid erinevaid GUI meetodeid, kuid enamikul on järsk õppimiskõver.

Tkinteri Pythoni liides võib olla vaikimisi valik "minna" enamusele, kuid algajad saavad selle keerukusega võitlema. Sarnaselt pakub PyGame'i raamatukogu muljetavaldavate liideste tegemise võimalusi, kuid võib olla nõudeid ületav.

Kui otsite oma projekti jaoks lihtsat ja kiiret liidest, võiks see olla vastus EasyGUI-le. Mida sellel puudub graafiline ilu, see on rohkem kui lihtsalt selle lihtsus ja kasutusmugavus.

See artikkel annab ülevaate raamatukogust, sealhulgas mõned kõige levinumaid võimalusi, mida oleme leidnud.

02 of 10

EasyGUI allalaadimine ja importimine

EasyGUI installimine on lihtne meetodiga apt-get install. Richard Saville

Selle artikli puhul kasutame standardseid Raspbian-operatsioonisüsteeme, mis on siin saadaval.

Kõigepealt tutvustab raamatukogu installiprogrammi, kasutades apt-get installi meetodit. Vaja on Interneti-ühendust oma Raspberry Pi abil kas traadiga Etherneti või WiFi-ühenduse kaudu.

Avage terminali aken (oma Pi-i tegumiribal must ekraan ikoon) ja sisestage järgmine käsk:

apt-get install python-easygui

See käsk laadib teegi alla ja installib selle teie jaoks, ja see on kõik seadistused, mida peate tegema.

03 of 10

Import EasyGUI-d

EasyGUI importimine võtab ainult ühe rea. Richard Saville

Enne funktsiooni kasutamist saate EasyGUI-i importida skripti. See saavutatakse, sisestades oma skripti ülaosas ühe reana ja olenemata sellest, millistest EasyGUI liidese valikutest te kasutate.

Loo uus skript, sisestage oma terminaliaknas järgmine käsk:

sudo nano easygui.py

Ilmub tühi kuva - see on teie tühi fail (nano on lihtsalt tekstiredaktori nimi). Et importida EasyGUI oma skripti, sisestage järgmine rida:

alates easygui impordist *

Me kasutame seda spetsiifilist impordi versiooni, et muuta kodeerimine veelgi lihtsamaks hiljem. Näiteks selle eway importimise asemel peaksime kirjutama "easygui.msgbox", et saaksime lihtsalt kasutada "msgbox" -t.

Lähme nüüd osa EasyGUI-i põhiliidese valikutest.

04 10-st

Basic Message Box

Lihtne sõnumikast on suurepärane võimalus EasyGUI-st käivitada. Richard Saville

Selles sõnumikaskas lihtsas vormis annab kasutajale teksti rida ja ühe klõpsu. Siin on näide, mida proovida - sisestage impordiliini järel järgmine rida ja salvestage, kasutades selleks Ctrl + X:

msgbox ("Cool box huh?", "Olen sõnumikast")

Skripti käitamiseks kasutage järgmist käsku:

sudo python easygui.py

Peaksite nägema sõnumikast, kus on ülaosas kirjas "Olen sõnumikast" ja "Cool box huh?" nupu kohal.

05 of 10

Jätkake või tühistage lahtrisse

Lahtris Jätka / Tühista saate oma projektidele kinnitada. Richard Saville

Mõnikord peate kasutajalt toimingu kinnitamiseks või valige, kas jätkata või mitte. Kast "ccbox" pakub sama teksti rida kui põhiline sõnumikk ülaosas, kuid pakub 2 nuppu - "Jätka" ja "Tühista".

Siin on näide kasutatavast üksust, kusjuures jätkake ja tühistage nuppe, et printida terminali. Te võite pärast iga nupu vajutamist toiminguid muuta, et teha kõik, mis sulle meeldib:

alates easygui import * import time msg = "Kas soovite jätkata?" title = "Jätkake?" kui ccbox (msg, title): # näita dialoogi Continue / Cancel (Jätka / tühista) prindi "Kasutaja valitud jätkata" # Lisa siia veel teised käsud: # kasutaja valis Tühista printimine "User canceled" # Lisa veel käske siin

06 10-st

Kohandatud nupp

Nuppude nupp võimaldab teil teha kohandatud nuppude valikuid. Richard Savlle

Kui sisseehitatud kasti valikud ei anna teile täpselt vajalikku teavet, saate luua kohandatud nuppude, kasutades funktsiooni "nupp".

See on suurepärane, kui kasutate rohkem võimalusi, mis vajavad kasutajaliidese katmist või võib-olla kontrollida mitut LED-i või muid komponente.

Siin on näide, milles valitakse kaste tellimuse jaoks:

alates easygui impordist * impordiaeg msg = "Milline kastmes soovite?" valikud = ["Kerge", "Kuum", "Väga kuum"] vastus = nuppude (msg, options = options) kui vastus == "Kerge": prindi vastus, kui vastus == "Hot": printida vastus, kui vastus == "Extra Hot": prindi vastus

07 of 10

Valikukast

Choice Box sobib suurepäraselt esemete pikematele loenditele. Richard Saville

Nupud on suurepärased, kuid pikkade valikute loendite puhul on "valikukast" palju mõtet. Proovige 10 kasti kast ja peate kokku leppima!

Need lahtrid loetlevad olemasolevad valikud ridu üksteise järel, külgedel asuvad kastikesed "OK" ja "Tühista". Nad on mõistlikult nutikad, sorteerides valikuid tähestikulises järjekorras ja samuti lubades vajutada klahvi, et liikuda kirja esimesele valikule.

Siin on näide, mis näitab kümmet nime, mida näete, on ekraanipildis sorteeritud.

alates easygui impordist * impordi aeg msg = "Kes lase koerad välja?" title = "Missing Dogs" choices = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"] valik = optionbox (sõnum, pealkiri, valikud)

08 10-st

Andmesisesekraan

Multenterbox võimaldab kasutajatel andmeid koguda. Richard Saville

Blanketid on suurepärane võimalus oma projekti jaoks andmete salvestamiseks, ja EasyGUI-l on valik "Multifunktsionaalne kast", mis võimaldab kuvada märgistatud välju teabe hankimiseks.

Veel kord on see märgistusväljade puhul ja lihtsalt sisendite hõivamine. Me allpool näitasime väga lihtsa jõusaalis osalemise registreerumise vormi.

EasyGUI veebisaidil on üksikasjalikult võimalik valideerimist ja muid täiustatud funktsioone lisada.

alates easygui impordist * impordiaeg msg = "Liikmeinfo" nimi = "Gym liikmelisuse vorm" fieldNames = ["Eesnimi", "Perekonnanimi", "Vanus", "Kaal]] fieldValues ​​= [] # lähteväärtuste väljale Value = multitenterbox (msg, title, fieldNames) print field Values

09 of 10

Piltide lisamine

Lisage oma kastidesse pildid täiesti uueks GUI-i kasutamiseks. Richard Saville

Saate lisada oma EasyGUI-liidestele pilte, lisades väga väikese koguse koodi.

Salvestage pilt oma Raspberry Pi juurde samasse kataloogi kui teie EasyGUI-skript ning märkige failinimi ja laiendus (näiteks image1.png).

Kasutame näiteks nupuvajutust.

alates easygui impordist * impordi aeg image = "RaspberryPi.jpg" msg = "Kas see on vaarika Pi?" valikud = ["Jah", "Ei"] reply = pocket (msg, image = image, choices = options) if reply == "Yes": print "Yes" else: print "no"

10-st 10-st

Veel täiendavaid funktsioone

Sa ei saa EasyGUI-ga maksesüsteeme teha, kuid sul võib olla lõbusat teesklemist !. Richard Saville

Oleme siin peamised "põhilised" EasyGUI-i võimalused kaetud, et saaksite alustada, kuid sõltuvalt sellest, kui palju soovite õppida ja mida teie projekt vajab, on palju kasti võimalusi ja näiteid.

Paroolikarbid, koodide kastid ja isegi failide kastid on mõnede nimede jaoks saadaval. See on väga mitmekülgne raamatukogu, mida on mõne minutiga lihtne üles leida ja kus on ka mõningaid suurepäraseid riistvarakontrolli võimalusi.

Kui soovite teada saada, kuidas kodeerida muid asju, nagu Java, HTML või muud, siin on siin parimad võrgukoodid .