Tee yksinkertaiset käyttöliittymät Raspberry Pi -ohjelmalla käyttämällä EasyGUI-ohjelmaa

Graafisen käyttöliittymän (GUI) lisääminen Raspberry Pi -projektiin on erinomainen tapa sisällyttää näyttöön tietojen syöttö, näytön painikkeet ohjaimille tai jopa vain älykkäämpi tapa näyttää lukemia komponentteja, kuten antureita.

01/10

Tee käyttöliittymä projektille

EasyGUI on nopea ja yksinkertainen hanke kokeilla tänä viikonloppuna. Richard Saville

Raspberry Pi: lla on useita erilaisia ​​GUI-menetelmiä, mutta useimmilla on jyrkkä oppimiskäyrä.

Tkinter Python -rajapinta voi olla useimmilleen oletusarvoinen "go to" -vaihtoehto, mutta aloittelijat voivat kamppailla sen monimutkaisuudesta. Samoin PyGame-kirjasto tarjoaa mahdollisuuksia tehdä vaikuttavia rajapintoja, mutta voi olla vaatimusten ylituotanto.

Jos etsit hankkeen yksinkertaista ja nopeaa käyttöliittymää, EasyGUI voi olla vastaus. Graafisen kauneuden puuttuessa se on enemmän kuin sen yksinkertaisuus ja helppokäyttöisyys.

Tässä artikkelissa tutustutaan kirjastoon, johon sisältyy joitain hyödyllisiä vaihtoehtoja, jotka olemme löytäneet.

02/10

EasyGUI: n lataaminen ja tuominen

EasyGUI-asennus on yksinkertainen "apt-get install" -menetelmällä. Richard Saville

Tässä artikkelissa käytämme tavallista Raspbian-käyttöjärjestelmää, joka on saatavilla täällä.

Kirjaston asentaminen on tuttu prosessi useimmille, käyttäen 'apt-get install' -menetelmää. Tarvitset internetyhteyden Raspberry Pi: ssä käyttämällä joko kiinteää Ethernet- tai WiFi-yhteyttä.

Avaa pääteikkuna (Pi-tehtäväpalkin mustan näytön kuvake) ja syötä seuraava komento:

apt-get asenna python-easygui

Tämä komento lataa kirjaston ja asentaa sen sinulle, ja tämä on kaikki asetukset, jotka sinun on tehtävä.

03/10

Tuo EasyGUI

EasyGUI: n tuominen vie vain yhden rivin. Richard Saville

EasyGUI on tuotava komentosarjaan, ennen kuin voit käyttää sen toimintoja. Tämä saavutetaan syöttämällä yksi rivi komentosarjan yläosaan ja se on sama riippumatta siitä, mitä EasyGUI-liitäntävaihtoehtoja käytät.

Luo uusi käsikirja kirjoittamalla seuraavan komennon pääteikkunaan:

sudo nano easygui.py

Nolla näyttö tulee näkyviin - tämä on tyhjää tiedostoasi (nano on yksinkertaisesti tekstieditorin nimi). Voit tuoda EasyGUI: n käsikirjoitustasi syöttämällä seuraavan rivin:

easygui-tuonnista *

Käytämme tätä tuoteluettelon erityistä versiota koodauksen tekemiseksi entistä helpommin myöhemmin. Esimerkiksi tuotaessa tätä ewayä, sen sijaan, että kirjoittaisimme "easygui.msgbox", voimme yksinkertaisesti käyttää msgboxia.

Katetaan nyt joitain EasyGUI: n tärkeimpiä käyttöliittymäasetuksia.

04/10

Perusviestikenttä

Yksinkertainen viestikenttä on erinomainen tapa aloittaa EasyGUI. Richard Saville

Tämä viestiruutu, sen yksinkertaisimmassa muodossa, antaa käyttäjälle tekstirivin ja yhden painikkeen napsauttamalla. Seuraavassa on esimerkki yrittääksesi - syötä seuraava rivi tuontiviivan jälkeen ja tallenna käyttäen Ctrl + X:

msgbox ("Cool box huh?", "Minä olen Message Box")

Käytä komentosarjaa käyttämällä seuraavaa komentoa:

sudo python easygui.py

Sinun pitäisi nähdä ilmoitusruutu, jossa on yläreunassa kirjoitettu 'Olen viestikenttä' ja 'Cool box huh?' painikkeen yläpuolella.

05/10

Jatka tai Peruuta-ruutu

Jatka / Peruuta-ruutu voi lisätä vahvistuksen projekteihisi. Richard Saville

Joskus käyttäjän on vahvistettava toiminto tai päätettävä, jatketaanko vai ei. "Ccbox" -ruutu tarjoaa saman tekstirivin kuin yllä oleva perusviestiruutu, mutta siinä on kaksi painiketta - "Jatka" ja "Peruuta".

Tässä on esimerkki yhdestä käytössä olevasta, ja jatkuu ja peruuta painikkeet tulostimeen päätelaitteelle. Voit muuttaa toimintoa jokaisen painikkeen painamisen jälkeen tehdäksesi mitä haluat:

from easygui tuonti * tuonti aika msg = "Haluatko jatkaa?" title = "Jatka?" jos ccbox (msg, otsikko): # näytä Continue / Cancel -valintaikkuna print "Käyttäjä valittu jatkaa" # Lisää muita komentoja tässä muualla: # käyttäjä valitsi Cancel print "User canceled" # Lisää muita komentoja täällä

06/10

Custom Button Box

Painikolla voit tehdä mukautettuja painikkeita. Richard Savlle

Jos sisäänrakennetut ruutuasetukset eivät anna sinulle tarpeeksi, voit luoda mukautetun ruutuikkunan "buttonbox" -ominaisuuden avulla.

Tämä on hienoa, jos sinulla on enemmän vaihtoehtoja, jotka tarvitsevat kattavan tai ehkä ohjaavat lukuisia LEDejä tai muita komponentteja käyttöliittymällä.

Seuraavassa esimerkki valitaan kastike tilauksesta:

from easygui tuonti * tuonti aika msg = "Mikä kastike haluat?" vastaus == "Mild": tulosta vastaus, jos vastaus == "Kuuma": tulosta vastaus, jos vastaus == "hot", "extra hot"] answer = buttonbox (msg, choices = choices) "Extra Hot": tulosta vastaus

07/10

Choice Box

Valintalaatikko sopii pitempiin kohteiden luetteloihin. Richard Saville

Painikkeet ovat hyviä, mutta pitkän valikoiman vaihtoehdoista "valintalaatikolla" on paljon järkeä. Yritä valita 10 painiketta laatikossa ja pian sopii!

Näissä ruutuissa luetellaan käytettävissä olevat vaihtoehdot rivissä peräkkäin, 'OK' ja 'Peruuta' laatikko sivulle. He ovat kohtuullisen älykkäitä, lajittelevat vaihtoehtoja aakkosjärjestyksessä ja antavat myös painallusnäppäimen siirtyä ensimmäisen kirjeenvaihtoon.

Tässä on esimerkki kymmenestä nimestä, jotka näet on lajiteltu kuvakaappauksessa.

from easygui tuonti * tuonti aika msg = "Kuka päästää koirat ulos?" title = "Missing Dogs" valinnat = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah" = valintabox (msg, otsikko, valinnat)

08 of 10

Data Entry Box

"Multenterbox" -toiminnon avulla voit kaapata tietoja käyttäjiltä. Richard Saville

Lomakkeet ovat loistava tapa hankkia tietoja hankkeestasi, ja EasyGUI: lla on "monipakettisovellus" -vaihtoehto, jonka avulla voit näyttää merkittyjä kenttiä tietojen keräämiseksi.

Jälleen kerran on kyse merkintäkentistä ja yksinkertaisesti syötteen syöttäminen. Olemme esittäneet esimerkin alla yksinkertaisen kuntosalin jäsenyyden ilmoittautumislomakkeelle.

Valintaa ja muita lisäominaisuuksia voidaan lisätä EasyGUI-verkkosivustolla yksityiskohtaisesti.

from easygui tuonti * tuonti aika msg = "jäsenen tiedot" title = "kuntosyyden jäsenmalli" fieldNames = ["Etunimi", "Sukunimi", "Ikä", "Paino"] fieldValues ​​= [] # Aloitusarvot fieldValues ​​= (msg, nimi, kentänNimet) print fieldValues

09/10

Kuvien lisääminen

Lisää kuvia laatikoihin kokonaan uusi tapa käyttää GUI. Richard Saville

Voit lisätä kuvia EasyGUI-rajapintoihin sisällyttämällä hyvin pienen määrän koodia.

Tallenna kuva Raspberry Pi -ohjelmaan samaan hakemistoon kuin EasyGUI-skripti ja kirjoita tiedostonimi ja -laajennus (esimerkiksi image1.png).

Käytetään esimerkiksi painiketta:

from easygui tuonti * tuonti aika image = "RaspberryPi.jpg" msg = "Onko tämä Vadelma Pi?" Vastaa == "Yes": print "Yes" else: print "No" = answer.svg = "Kyllä": vastaus = buttonbox (msg, image = image, choices = choices)

10/10

Edistyneempiä ominaisuuksia

Et voi tehdä maksujärjestelmiä EasyGUI: n kanssa, mutta voit pitää hauskaa teeskentelevänä !. Richard Saville

Olemme päässeet tärkeimpiin "perus" EasyGUI-optioihin, jotta pääset alkuun, mutta käytettävissä on paljon enemmän vaihtoehtoja ja esimerkkejä riippuen siitä, kuinka paljon haluat oppia ja mitä projekti tarvitsee.

Salasanalaatikoita, koodikenttiä ja jopa tiedostoruutuja ovat käytettävissä muutamia. Se on erittäin monipuolinen kirjasto, joka on helppo noutaa muutamassa minuutissa, ja myös hienoja laitteiston ohjausmahdollisuuksia.

Jos haluat oppia koodaamaan muita asioita, kuten Java, HTML tai enemmän, tässä ovat parhaat käytettävissä olevat online-koodausresurssit .