Adăugarea unei interfețe grafice (GUI) la proiectul dvs. Raspberry Pi este o modalitate excelentă de a include un ecran pentru introducerea datelor, butoane pe ecran pentru comenzi sau chiar o modalitate mai inteligentă de a afișa citiri de la componente cum ar fi senzori.
01 din 10Faceți o interfață pentru proiectul dvs.
Există o serie de metode GUI diferite disponibile pentru Raspberry Pi, cu toate acestea, majoritatea au o curbă abruptă de învățare.
Interfața Tkinter Python poate fi opțiunea implicită "go-to" pentru majoritatea utilizatorilor, dar începătorii se pot confrunta cu complexitatea acesteia. În mod similar, biblioteca PyGame oferă opțiuni pentru crearea unor interfețe impresionante, dar poate fi excedent de cerințe.
Dacă sunteți în căutarea unei interfețe simple și rapide pentru proiectul dvs., EasyGUI ar putea fi răspunsul. Ceea ce îi lipsește în frumusețea grafică este mult mai mult decât face în simplitatea și ușurința de utilizare.
Acest articol vă va oferi o introducere în bibliotecă, inclusiv unele dintre cele mai utile opțiuni pe care le-am găsit.
Continuați să citiți mai jos
02 din 10Descărcarea și importarea EasyGUI
Pentru acest articol, folosim sistemul de operare standard Raspbian.
Instalarea bibliotecii va fi un proces familial pentru majoritatea utilizatorilor, folosind metoda "apt-get install". Veți avea nevoie de o conexiune la internet pe Raspberry Pi, folosind fie o conexiune Ethernet prin cablu sau WiFi.
Deschideți o fereastră terminală (pictograma unui ecran negru pe bara de sarcini a lui Pi) și introduceți următoarea comandă:
apt-get instalează python-easygui
Această comandă va descărca biblioteca și o va instala pentru dvs., și asta este tot ce trebuie să faceți. Continuați să citiți mai jos EasyGUI trebuie să fie importat într-un script înainte de a putea utiliza funcțiile sale. Acest lucru se realizează prin introducerea unei singure linii în partea de sus a scriptului dvs. și este aceeași, indiferent de opțiunile de interfață EasyGUI pe care le utilizați. Creați un script nou introducând următoarea comandă în fereastra terminalului: sudo nano easygui.py
Va apărea un ecran gol - acesta este fișierul dvs. gol (nano este pur și simplu numele unui editor de text). Pentru a importa EasyGUI în scriptul dvs., introduceți următoarea linie: de la easygui import *
Folosim această versiune specifică a importului pentru a face mai ușor codarea mai târziu. De exemplu, atunci când importați acest eway, în loc de a scrie "easygui.msgbox", putem folosi pur și simplu "msgbox". Acum să acoperim câteva dintre opțiunile de interfață cheie din EasyGUI. Această "casetă de mesaje", în forma sa cea mai simplă, oferă utilizatorului o linie de text și un singur buton pentru a face clic. Iată un exemplu de încercat: introduceți următoarea linie după linia de import și salvați utilizând Ctrl + X: msgbox ("Cutie cool, nu?", "Sunt o cutie de mesaje")
Pentru a executa scriptul, utilizați următoarea comandă: sudo python easygui.py
Ar trebui să vedeți o casetă de mesaj, cu Sunt o cutie de mesaje scrise în bara de sus și Postul cool? deasupra butonului. Continuați să citiți mai jos Uneori veți avea nevoie de utilizator pentru a confirma o acțiune sau alegeți dacă doriți sau nu să continuați. Caseta "ccbox" oferă aceeași linie de text ca și caseta de mesaj de mai sus, dar oferă 2 butoane - Continua și Anulare. Iată un exemplu de unul în uz, cu butoanele de a continua și anulați tipărirea la terminal. Puteti schimba actiunea dupa ce apasati fiecare buton pentru a face ce vreti: de la easygui import *timpul de importmsg = "Doriți să continuați?"title = "Continuați?"dacă ccbox (msg, title): # afișează un dialog Continue / Cancel print "Continuă selectarea utilizatorului" # Adăugați alte comenzi aici altceva: # utilizator a ales Anulare tipăriți "Utilizatorul anulat" # Adăugați alte comenzi aici 06 din 10 Dacă opțiunile din cutia încorporată nu vă dau destul de mult ceea ce aveți nevoie, puteți crea o casetă de butoane personalizată utilizând funcția "buton". Acest lucru este minunat dacă aveți mai multe opțiuni care necesită acoperire sau poate controlați un număr de LED-uri sau alte componente cu interfața de utilizare. Iată un exemplu de selectare a sosului pentru o comandă: de la easygui import *import timp msg msg = "Care sos doriți?"opțiuni = "ușoară", "fierbinte", "extra fierbinte"răspuns = buton (msg, opțiuni = opțiuni) dacă răspuns == "ușoară": print răspunsdacă răspunsul == "Hot": print răspunsdaca raspunsul == "Extra Hot": print răspuns
Continuați să citiți mai jos Butoanele sunt minunate, dar pentru liste lungi de opțiuni, o "cutie de alegere" are multă sens. Încercați să montați 10 butoane într-o cutie și veți fi de acord în curând! Aceste casete afișează opțiunile disponibile în rânduri una după alta, cu o casetă "OK" și "Anulare" în lateral. Sunt destul de inteligenți, sortează opțiunile în ordine alfabetică și, de asemenea, vă permite să apăsați o cheie pentru a trece la prima opțiune a acelei scrisori. Iată un exemplu care prezintă zece nume, pe care le puteți vedea, care au fost sortate pe ecran. de la easygui import *timpul de importmsg = "Cine a lăsat câinii să iasă?"title = "Câini lipsă"alegeri = "Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"alegere = casetă de selectare (msg, titlu, opțiuni) 08 din 10 Formularele reprezintă o modalitate excelentă de a captura date pentru proiectul dvs., iar EasyGUI are o opțiune "multenterbox" care vă permite să afișați câmpuri etichetate pentru a captura informații cu. Încă o dată, este vorba de un câmp de etichetare și de captare a intrărilor. Am făcut un exemplu mai jos pentru un formular foarte simplu de înscriere în cadrul gimnaziului. Există opțiuni pentru adăugarea validării și a altor funcții avansate, pe care site-ul EasyGUI le acoperă în detaliu. de la easygui import *timpul de importmsg = "Informații despre membri"title = "Formular de membru al Gym"fieldNames = "Prenume", "Prenume", "Vârstă", "Greutate"fieldValues = # valorile de pornirefieldValues = caseta multenter (msg, title, fieldNames)tipăriți câmpurile Continuați să citiți mai jos Puteți adăuga imagini la interfețele EasyGUI prin includerea unei cantități foarte mici de cod. Salvați o imagine în Raspberry Pi în același director ca și scriptul EasyGUI și faceți o notă cu privire la numele și extensia fișierului (de exemplu, image1.png ). Hai să folosim caseta de buton ca exemplu: de la easygui import *timpul de importimage = "RaspberryPi.jpg"msg = "Este o piersică Pi?"opțiuni = "Da", "Nu"răspuns = buton (msg, imagine = imagine, opțiuni = opțiuni)dacă răspunsul == "Da": tipăriți "Da"altceva: imprimați "Nu" 10 din 10 Am acoperit aici opțiunile principale "EasyGUI" de bază pentru a începe, cu toate acestea, există mai multe opțiuni și exemple disponibile în funcție de cât de mult doriți să învățați și de ceea ce cere proiectul. Dulapurile de cutie, casetele de cod și chiar casetele de fișiere sunt disponibile pentru a numi câteva. Este o bibliotecă foarte versatilă, ușor de preluat în câteva minute, cu posibilități foarte mari de control al hardware-ului. Dacă doriți să învățați cum să codificați alte lucruri, cum ar fi Java, HTML sau mai multe, puteți vedea cele mai bune resurse online de codare disponibile. Importați EasyGUI
Caseta de bază de mesaje
Continuați sau anulați caseta
Cutie cu butoane personalizate
Caseta de alegere
Caseta pentru introducerea datelor
Adăugarea de imagini
Mai multe caracteristici avansate