Adding a graphical user interface (GUI) à u vostru prugettu di u Raspberry Pi hè una grande manera di cumprà una schermu per l'ingressu di dati, buttuni di scrittura per i cuntrolli, o ancu un modu smarter d'esce a lettura di cumpunenti, cum'è sensori.
01 di 10
Fate una specje per u vostru vostru prughjettu
Ci hè una quantità di diversi metudi di GUI dispunibili per a Raspau Pi, in ogni casu, a maiò avianu una curva di steep learning.
L'interfaccia di Tkinter Python pò esse l'opere di predeterminato 'go to' per a maiò, però, principianti pò pugnalli cù a so cumplissità. In u stessu, a biblioteca di PyGame offre opcions per fà imprese interfaces, ma pò esse surplus à i bisogni.
Se cercate un interface simplice è veloci per u vostru travagliu, EasyGUI puderia esse a risposta. Chì ci manca in bellezza gràfica più chjaru perchè in a so simplicità è a facilità d'usi.
Questu articulu face una pruduzzione à a bibliuteca, cumpresa quarchi pocu di l'opcions più utuli chì avemu truvatu.
02 di 10
Scaricate è impurtante EasyGUI
Per questu articulu, avemu usatu u sistema operatore standard Raspbian chì hè dispunibule quì.
Stallà a bibliuteca serà un prucessu familiar à a maiò, usendu u metu "apt-get install". Avete bisognu di una cunnessione di Internet in u vostru Raspberry Pi, usando una cunnessione Ethernet o cunnessione WiFi.
Apertura una finestra di terminal (l'icona di una screen nìvera nantu à a vostra taskbar) è intrì u cumandimu seguitu:
apt-get install python-easyguiQuestu cumanda scaricate a librettu è installate per voi, è questu hè tutta a setup chì avete bisognu.
03 di 10
Importazione EasyGUI
EasyGUI hà da esse impurtatu in un script prima di puderà aduprà e so funzioni. Questu hè acquistatu per entra una sola linea in u cima di u vostru scrittore è hè a stessa, independentemente d'aiutu l'aiutu di l'aiutu di l'aiutu di l'EasyGUI.
Cumentu un novu scrittore numendu u cumandimu seguitu in a vostra finestra di terminal:
sudo nano easygui.pyUna pantalla in pausa vi sarà - questu hè u vostru schedariu vacanti (nanu hè solu u nomu di un editore di testu). Per impurta EasyGUI in u vostru script, intria a linea seguente:
from easygui import *Avemu l'usu di sta virsioni specifica di l'impurtanza per fà a codificazione ancu più faciule dopu. Per esempiu, quandu imprighendu sta eway, invece d'avè da scrive "easygui.msgbox" pudemu semplice d'utilizà "msgbox".
Avà cugghiate parechji opere di l'interfaccia chjave in EasyGUI.
04 di 10
Missaghju di Basic Message
Stu messaghju in casu, in a so forma simplice, dà l'utilizatori una linea di testu è un unicu buttone per cliccà. Eccu unempiu per pruvà: intria a linea seguente da a vostra linea di impurtazione, è guardate cù Ctrl + X:
msgbox ("Cool box huh?", "I am a Message Box")Per correr l'script, utilice l'usu cumminatu:
sudo python easygui.pyAvete bisognu di vede un box di missaghja appare, cù "Sò un Semplici Message" scrittu in u top bar, è "Cool box huh?" sopra u buttone.
05 di 10
Continue o annecessement Box
Quandu avete bisognu à l'utilizatore per rinfurzà una accionu o sceglie o no seguite. A casella 'ccbox' offre a listessa linea di testu cum'è u messagiu basciu prima, ma provista 2 buttoni - "Continue" è "Cancel".
Eccu unempiu di unu in usu, cù l'articuli stampiali è di annunzià stampati à a terminal. Pudete cambià l'azzione dopu ogni buttone presionu per fà ciò chì ti piace:
di easygui import * import time msg = "Vulete cuntinuà?" title = "Continue?" se ccbox (msg, title): # mostra un Continua / annullate di dialogo stampate «Utenti sceglie selezziunate» #Cutite altri cumandamenti altru altru: # user chose Aghjurnà stampa "Usuariu canciata" # Aggiuncenu altre ordine quì06 di 10
Custom Button Box
Se l'opere di scatula integrata ùn sò micca assai dà ciò chì voi necessariu, pudete creà una buttula di buttuna customizata cù a funziona «buttone».
Questu hè grandore sè vo avete più d'opcions chì avemu bisognu d'ottene, o forsi sò cuntrullati un numeru di LEDs o altre cumpunenti cù a UI.
Eccu unempiu stampendu una salsa per un ordine:
di easygui import * import time msg = "Cosa zucca vulete?" scelte = = "Mild", "Hot", "Extra Hot"] reply = buttonbox (msg, choices = choices) se contesta == "Mild": imprime risposta si contesta == "Hot": imprime risposta si contesta == "Extra Hot": imprime risposta07 di 10
Cuntattà scelta
I buttoni sò grandi, ma per longa lista di l'opzioni, una «scelta di scelta» faci assai sensu. Pruvate cù 10 buttuni in una casella è avete prumetti d'accordu!
Queste boxes à listanu l'opzioni dispunibilii in e fila una dopu l'autra, cù una casella "Adecuazione" è "Cancella" à u latu. Sò ragiunamenti intelligenti, sgruppendu l'alfabettichi nantu à l'alfabbèticamente è ancu permettenu di pressu una chjave per salto à a prima opzione di quella lettera.
Eccu un esempiu illustrà 10 nomi, chì pudete vede hè stata ordenata ind'è a screenshot.
from easygui import * import time msg = "Quelli chì i ghjacari?" title = "Missing Dogs" choices = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"] = optionbox (msg, title, choices)08 di 10
Data Entry Box
I formi sò un modu bonu per capturà e dati per u vostru travagliu, è EasyGUI hà una opcione "multenterbox" chì vi permette di vede campi chjamati cum'è per capisce l 'infurmazione cù.
Una volta hè novu un casu di e campi e marcattiche è solu per piglià l'ingaghjatu. Avemu fattu un esempiu davanti per una forma di signa altamente simpaticata di gimene.
Ci hè parechje persone per aghjustà a validazione è altre funziunalità avanzati, chì u situ web EasyGUI cresce in dettu.
from easygui import * importamento time msg = "Informazione di Membru" title = "Forma di Cumunitiva Gimma" campiNames = ["First Name", "Surname", "Age", "Weight"] fieldValues = [] # the starting values fieldValues = multenterbox (msg, title, fieldNames) print fieldValues09 di 10
Adding Images
Pudete aghjunte l'imàgini à i vostri interfaces EasyGUI, cumprese una quantità limitata di codice.
Scaricate una impresa in a vostra Raspberry Pi in u listessu listu per u vostru script script EasyGUI è fate una nota di u nome di l'archive è l'estensione (per esempiu, image1.png).
Cumpiemu a buttula box com'è un esempiu:
from easygui import * import time image = "RaspberryPi.jpg" msg = "Questu hè un Raspberry Pi?" scelte = ["Sì", "No"] reply = buttonbox (msg, image = image, choices = choices) se contesta == "Sì": imprimir "Sì" altru: imprime "No"10 di 10
More features Avanzate
Avemu copertu l'opere di "EasyJet" básica di "EasyJet" per avè principiatu, ma avà parechje più di scelti Opere è esempi dispunibuli secondu a quantu vulete imparà, è ciò chì u vostru prugettu dumandassi.
I boxes di u cuntrollu, i casali di codice, è ancu i file boxes sò dispunibili per nomene uni pochi. Hè una biblioteca assai versatili chì si pò fà ricerche in minuti, cù qualchì pussibilità di cuntrollu hardware.
Se vulete amparà à cumulerà altre cosa cum'è Java, HTML o più, quì sò i migliori risorse di codificazione in linea .