Napravite jednostavne GUI pomoću maline Pi pomoću EasyGUI

Dodavanje grafičkog korisničkog sučelja (GUI) u vaš projekt Raspberry Pi sjajan je način uključivanja zaslona za unos podataka, gumbi na zaslonu za kontrolu ili čak pametniji način prikazivanja očitanja od komponenata kao što su senzori.

01 od 10

Napravite sučelje za svoj projekt

EasyGUI je brz i jednostavan projekt koji će se probati ovaj vikend. Richard Saville

Postoji niz različitih metoda GUI dostupnih za maline Pi, međutim, većina ima strmu krivulju učenja.

Sučelje Tkinter Python može biti zadana opcija "go to" za većinu, no početnici se mogu boriti s njegovom složenosti. Slično tome, biblioteka PyGame nudi mogućnosti za stvaranje impresivnih sučelja, ali može biti višak zahtjevima.

Ako tražite jednostavno i brzo sučelje za svoj projekt, EasyGUI bi mogao biti odgovor. Ono što nedostaje u grafičkoj ljepoti čini više nego što se čini u svojoj jednostavnosti i jednostavnosti upotrebe.

Ovaj vam članak donosi uvod u biblioteku, uključujući neke od najkorisnijih opcija koje smo pronašli.

02 od 10

Preuzimanje i uvoz EasyGUI

EasyGUI instalacija je jednostavna pomoću 'apt-get install' metode. Richard Saville

Za ovaj članak upotrebljavamo standardni Raspbian operativni sustav koji je dostupan ovdje.

Instaliranje knjižnice bit će poznati proces većini, koristeći metodu 'apt-get install'. Trebat će vam internetska veza na Raspberry Pi, koristeći bilo žičanu Ethernet ili WiFi vezu.

Otvorite prozor terminala (ikonu crnog zaslona na programskoj traci Pi) i unesite sljedeću naredbu:

apt-get instalirajte python-easygui

Ova naredba će preuzeti biblioteku i instalirati ga za vas, a to je sve što trebate učiniti.

03 od 10

Uvoz EasyGUI

Uvoz EasyGUI zahtjeva samo jednu liniju. Richard Saville

EasyGUI mora biti uvezen u skriptu prije nego što možete koristiti njegove funkcije. To se postiže unosom jedne crte na vrh skripte i jednako je bez obzira na opcije EasyGUI sučelja koje koristite.

Stvorite novu skriptu unosom sljedeće naredbe u svoj terminalni prozor:

sudo nano easygui.py

Pojavit će se prazan zaslon - ovo je vaša prazna datoteka (nano je jednostavno naziv uređivača teksta). Da biste uvezli EasyGUI u skriptu, unesite sljedeću retku:

od easygui uvoza *

Koristimo ovu specifičnu verziju uvoza kako bismo kasnije lakše olakšali kodiranje. Na primjer, kada uvozite ovaj eWay, umjesto da trebate napisati 'easygui.msgbox' možemo jednostavno upotrijebiti 'msgbox'.

Sad pokrivamo neke od ključnih mogućnosti sučelja unutar EasyGUI.

04 od 10

Osnovni okvir za poruke

Jednostavna poruka okvir je sjajan način za početak s EasyGUI. Richard Saville

Ova poruka, u najjednostavnijem obliku, daje korisniku liniju teksta i jednim pritiskom gumba. Slijedi primjer pokušaja - unesite sljedeći redak nakon uvodne linije i spremite pomoću Ctrl + X:

msgbox ("Cool box huh?", "Ja sam okvir za poruke")

Da biste pokrenuli skriptu, upotrijebite sljedeću naredbu:

sudo python easygui.py

Trebali biste se pojaviti okvir s porukama, na vrhu trake napisan je 'Ja sam okvir za poruke' i 'Cool box huh?' iznad gumba.

05 od 10

Nastavi ili Odustani okvir

Okvir Nastavi / Otkaži može dodati potvrdu vašim projektima. Richard Saville

Ponekad ćete trebati korisniku potvrditi radnju ili odabrati hoće li nastaviti. Okvir "ccbox" nudi isti redak teksta kao i gornji okvir za poruke, ali nudi 2 gumba "Nastavi" i "Odustani".

Evo primjera jednog u uporabi, s gumbima za nastavak i otkazivanje koji se ispisuju na terminal. Možete promijeniti akciju nakon svakog gumba da biste učinili sve što vam se sviđa:

od easygui uvoz * vrijeme uvoza msg = "Želite li nastaviti?" title = "Nastavi?" ako ccbox (msg, naslov): # prikazuje dijaloški okvir Nastavi / Otkaži "Korisnik odabran nastavak" # Dodajte druge naredbe ovdje drugo: # korisnik je odabrao Odustani ispis "Korisnik je otkazan" # Dodaj druge naredbe ovdje

06 od 10

Prilagođeni gumb za gumb

'Buttonbox' vam omogućuje da napravite prilagođene opcije gumba. Richard Savlle

Ako opcije ugrađenog okvira ne daju baš ono što vam je potrebno, možete stvoriti prilagođeni okvir za gumbe pomoću značajke gumba "gumb".

Ovo je sjajno ako imate više opcija koje treba pokriti ili možda upravljaju s više LED dioda ili drugih komponenti s korisničkim sučeljem.

Evo primjera odabira umaka za narudžbu:

od easygui uvoza * vrijeme uvoza msg = "Koji umak želite?" ako je odgovor == "Blago": odgovor ispisa ako odgovori == "Vruće": odgovor ispisa ako odgovori == ["Blago", "Vruće", "Dodatno vruće" "Extra Hot": odgovor ispisa

07 od 10

Izbor Box

Izbor Box je super za duže popise predmeta. Richard Saville

Gumbi su sjajni, ali za dugačke popise opcija, "izborni okvir" ima puno smisla. Pokušajte staviti 10 gumba u kutiju i uskoro ćete se složiti!

Ove okvire opisuju dostupne opcije u redovima jedan za drugim, s okvirom "OK" i "Cancel" na stranu. Razumljivo su pametni, razvrstavaju abecednim redom opcije i omogućuju vam da pritisnete tipku da biste prešli na prvu opciju tog slova.

Evo primjera koji prikazuje deset imena, koje možete vidjeti razvrstani u snimku zaslona.

od easygui uvoza * vrijeme uvoza msg = "Tko je pustio pse?" title = "Izbriši pse" [= Alex, Cat, Michael, James, Albert, Phil, Yasmin, Frank, Tim, Hannah] = izborni okvir (msg, naslov, izbor)

08 od 10

Polje za unos podataka

"Multenterbox" omogućuje snimanje podataka od korisnika. Richard Saville

Obrasci su odličan način za snimanje podataka za vaš projekt, a EasyGUI ima opciju "multenterbox" koja vam omogućuje prikazivanje označenih polja za snimanje informacija.

Još jednom to je slučaj označavanja polja i jednostavno hvatanje ulaz. Napravili smo primjer u nastavku za vrlo jednostavnu prijavu za članstvo u teretani.

Postoje opcije za dodavanje validacije i drugih naprednih značajki koje EasyguI web stranica detaljno pokriva.

from easygui uvoz * vrijeme uvoza msg = "Informacije članova" title = "Formular za članstvo u terenu" fieldNames = ["Ime", "Prezime", "Dob", "Težina"] fieldValues ​​= [] # polja početne vrijednostiValues ​​= (msg, naslov, naziv polja) ispis poljaValues

09 od 10

Dodavanje slika

Dodajte slike u svoje kutije za novi način korištenja GUI-ja. Richard Saville

Možete dodati slike na EasyGUI sučelja uključivanjem vrlo male količine koda.

Spremite sliku u Raspberry Pi u istom direktoriju kao i EasyGUI skripta i zapišite naziv datoteke i proširenje (na primjer, image1.png).

Kao primjer koristimo okvir za gumbe:

od easygui uvoza * uvozno vrijeme image = "RaspberryPi.jpg" msg = "Je li ovo malo raspršivač?" ako je odgovor == "Da": ispiši "Da" drugo: ispiši "Ne" = odgovor "gumb" (msg, slika = slika, izbor = izbor)

10 od 10

Više naprednih značajki

Ne možete uplatiti sustave za plaćanje EasyGUI-om, ali možete se zabaviti! Richard Saville

Ovdje smo pokrili glavne "osnovne" EasyGUI opcije da bismo mogli započeti, no postoji mnogo više opcija i primjera, ovisno o tome koliko želite saznati i što vaš projekt zahtijeva.

Lozinke, kutije s kodovima, pa čak i kutije s datotekama dostupne su za nazivanje nekoliko. To je vrlo svestrana knjižnica koja je lako pokupiti u nekoliko minuta, uz neke velike mogućnosti hardver kontrole kao dobro.

Ako želite naučiti kako kodirati druge stvari kao što su Java, HTML ili više, ovdje su najbolji dostupni resursi za online kodiranje .